Interactive graded quizzes for Jupyter notebooks (nbgrader-jupyterquiz).
Project description
Versions |
|
Documentation and Support |
|
Open Source |
|
Coding Standards |
|
Development Status |
nbgrader-jupyterquiz lets instructors embed interactive, gradeable quizzes directly inside Jupyter notebooks using a simple Markdown syntax. During nbgrader generate_assignment the quiz source is transformed into interactive quiz cells (powered by a fork of jupyterquiz); correct answers are hidden from students before the assignment is released.
Starting in v0.4.0, quizzes placed in an nbgrader Manually Graded Task cell are automatically graded: student responses are persisted to a responses.json sidecar as they answer, and nbgrader autograde evaluates them with partial-credit support. Per-question points (including fractions like {0.5}) are supported. See the graded-quizzes docs for the full workflow.
Free software: MIT license
Documentation: https://nbgrader-jupyterquiz.readthedocs.io
Installation
pip install nbgrader-jupyterquiz
Quick start
Register the preprocessor at the front of your nbgrader_config.py:
c.GenerateAssignment.preprocessors.insert(0, "nbgrader_jupyterquiz.CreateQuiz")
Write quizzes in Manually Graded Task cells using #### Quiz / #### End Quiz delimiters:
#### Quiz
* (SC) "What is the capital of France?"
+ "Paris" (Correct!)
- "London"
- "Berlin"
#### End Quiz
Run nbgrader generate_assignment — quiz regions are replaced with interactive widgets and correct answers are hidden from students.
See the documentation for the full quiz syntax, nbgrader pipeline, graded quizzes, and display options.
Credits
This package incorporates a fork of jupyterquiz (v2.9.6.4) by John M. Shea, copyright 2021–2025, used under the MIT License. See LICENSES/jupyterquiz-MIT.txt.
This package was scaffolded with Cookiecutter and the Ouranosinc/cookiecutter-pypackage project template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nbgrader_jupyterquiz-0.4.0.tar.gz.
File metadata
- Download URL: nbgrader_jupyterquiz-0.4.0.tar.gz
- Upload date:
- Size: 114.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89f41a7623d6b53ec9d0ed1cc454e74834c1e9714dbc3a2defdf43804b9a5ac6
|
|
| MD5 |
c5cb5ad75aa4f60dde953a768cd18679
|
|
| BLAKE2b-256 |
d83bb437c8ab2c96fa38902b650b59a1b3fbbf9a584f19eee80946323d90760b
|
Provenance
The following attestation bundles were made for nbgrader_jupyterquiz-0.4.0.tar.gz:
Publisher:
publish-pypi.yml on PhilippRisius/nbgrader-jupyterquiz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nbgrader_jupyterquiz-0.4.0.tar.gz -
Subject digest:
89f41a7623d6b53ec9d0ed1cc454e74834c1e9714dbc3a2defdf43804b9a5ac6 - Sigstore transparency entry: 1329245766
- Sigstore integration time:
-
Permalink:
PhilippRisius/nbgrader-jupyterquiz@2510423c8dd5fd51e1568a3ba809729e582fdeea -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/PhilippRisius
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@2510423c8dd5fd51e1568a3ba809729e582fdeea -
Trigger Event:
release
-
Statement type:
File details
Details for the file nbgrader_jupyterquiz-0.4.0-py3-none-any.whl.
File metadata
- Download URL: nbgrader_jupyterquiz-0.4.0-py3-none-any.whl
- Upload date:
- Size: 47.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96400e996984d7725832aa22edee732bdae35bb78295a0180357b554a8b1f4f8
|
|
| MD5 |
75645c69081670da7fe290834e85c82a
|
|
| BLAKE2b-256 |
77b884329827b43167b1991954751f78d6e671dd53e8676f4ab6ef865a3c1910
|
Provenance
The following attestation bundles were made for nbgrader_jupyterquiz-0.4.0-py3-none-any.whl:
Publisher:
publish-pypi.yml on PhilippRisius/nbgrader-jupyterquiz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nbgrader_jupyterquiz-0.4.0-py3-none-any.whl -
Subject digest:
96400e996984d7725832aa22edee732bdae35bb78295a0180357b554a8b1f4f8 - Sigstore transparency entry: 1329245833
- Sigstore integration time:
-
Permalink:
PhilippRisius/nbgrader-jupyterquiz@2510423c8dd5fd51e1568a3ba809729e582fdeea -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/PhilippRisius
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@2510423c8dd5fd51e1568a3ba809729e582fdeea -
Trigger Event:
release
-
Statement type: