Skip to main content

mograder logo

mograder

PyPI Tests Docs License: MIT Python 3.11+ Ruff Live Demo

Semi-automated grading for Marimo notebooks.

mograder student demo

How it works: Instructors author source notebooks with solution blocks and automated checks. mograder generate strips solutions to create release versions. Students complete the notebooks and get instant formative feedback from check() calls. mograder autograde executes submissions in sandboxed subprocesses, parses results, and stores grades in an SQLite gradebook. Markers review and add manual marks via the grader dashboard. mograder feedback exports annotated HTML for students.

Quick start

pip install mograder          # or: uv add mograder
mograder generate hw1         # strip solutions → release/
mograder autograde hw1        # grade submissions → autograded/
mograder feedback hw1         # export HTML → feedback/

Live demo

Try the student dashboard — a WASM app running entirely in your browser. See also the hub (student notebook editing), the grader (instructor view with pre-populated demo data), and a demo workshop with encrypted solutions (workshop key: mograder, instructor dashboard). Deep links open assignments and lectures directly: edit demo-assignment | run demo-lecture.

Documentation

Full Documentation Overview, installation, and all guides
Instructor Guide Step-by-step setup and grading walkthrough
Student Guide Setup instructions to share with students
Usage Reference All commands: generate, autograde, feedback, moodle, ...
API Reference check(), Grader, CLI, and module docs
Configuration Full mograder.toml reference
Security Threat model and sandboxing options

For students

Easiest: download the desktop app — no terminal needed.

Or via the command line:

curl -LsSf https://astral.sh/uv/install.sh | sh
uvx mograder student https://mograder-demo.jrkermode.uk/mograder.toml

For real courses, your instructor will provide the config URL. Or open in GitHub Codespaces — one click, no install needed.

License

MIT

Metadata

Release files for mograder 0.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mograder 0.3.3
File Size Uploaded
mograder-0.3.3.tar.gz 2.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mograder 0.3.3
File Interpreter ABI Platform
mograder-0.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 2.5 MB

Release files / mograder-0.3.3.tar.gz

Download URL mograder-0.3.3.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
ee77c9d451000800b709aed8bae7d3c3725b3e5388cc17983d653a34c3814942
BLAKE2b-256 checksum
How to use checksums
8e0a99217d57d3a43714250f036b6c9a09217115e6223907e7b9281d3de12506
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / mograder-0.3.3-py3-none-any.whl

Download URL mograder-0.3.3-py3-none-any.whl
Size 194.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7d6807737f0b09db93990835310144f1540c6aa0793ae17bbc025fb8031982f7
BLAKE2b-256 checksum
How to use checksums
1786051078a99ac0fa8ec7d2329a7b30f7651a47a815f92538d3a64f6e247085
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.13

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page