Format and tools for authoring and distributing Jupyter notebook assignments
Course instructors author assignments as Jupyter notebooks by creating a notebook that contains setup code, questions, solutions, and tests to validate those solutions. This project prepares an assignment to be distributed to students and later scored automatically.
The notebook format is not specific to a programming language or autograding framework, but was designed to be used with okpy, which is Python based. Contributions to support other testing frameworks, such as [nbgrader, and other programming languages are welcome.
An example notebook appears in tests/example.ipynb
, which uses the notebook
format. To convert it, run:
jassign tests/example.ipynb tests/output some/course
This command will create tests/output
with a student version and an autograder
version as subdirectories.
You can then generate a PDF from the result:
jassign-pdf tests/output/autograder/example.ipynb tests/output/autograder/example.pdf