Skip to main content

Sphinx extension: Grasple

This package contains a Sphinx extension for inserting Grasple exercises into a Jupyter book as an iframe. It allows you to easily add Grasple question with some formatting and, more importantly, the creation of QR codes in the PDF version of the page. This leads to the source link of the iframe.

This package is a continuation of the package https://github.com/dbalague/sphinx-grasple/.

Grasple gives you an embed code for each exercise, which can be added directly to your markdown-file. This package improved the embedding. More information on Grasple and the support of TU Delft can be found on: Teaching Support - Educational Tools - Grasple

Installation

To install the teachbooks-sphinx-grasple extension, follow these steps:

Step 1: Install the Package

Install the teachbooks-sphinx-grasple package using pip:

pip install teachbooks-sphinx-grasple

Step 2: Add to requirements.txt

Make sure that the package is included in your project's requirements.txt to track the dependency:

teachbooks-sphinx-grasple

Step 3: Enable in _config.yml

In your _config.yml file, add the extension to the list of Sphinx extra extensions (important: underscore, not dash this time):

sphinx: 
    extra_extensions:
        - teachbooks_sphinx_grasple

Usage

To use, include the following in your Jupyter book

::::{grasple}
:iframeclass: dark-light
:url: https://embed.grasple.com/exercises/f6c1bb4b-e63e-492e-910a-5a8c433de281?id=75093
:label: grasple_exercise_manual
:dropdown:
:description: Cross product in $\R^4$?

::::

In the jupyter book this leads to a custom admonition with the exercise included (https://embed.grasple.com/exercises/f6c1bb4b-e63e-492e-910a-5a8c433de281?id=75093).

In the PDF this leads to: example pdf

Important Note

The tests provided are still the original ones from sphinx-exercise and have not (yet) been adapted.

Contribute

This tool's repository is stored on GitHub. The README.md of the branch manual_docs is also part of the TeachBooks manual as a submodule. If you'd like to contribute, you can create a fork and open a pull request on the GitHub repository. To update the README.md shown in the TeachBooks manual, create a fork and open a merge request for the GitHub repository of the manual. If you intent to clone the manual including its submodules, clone using: git clone --recurse-submodulesgit@github.com:TeachBooks/manual.git.

Metadata

Release files for teachbooks-sphinx-grasple 1.3.0

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

Source distribution (sdist)

Source distribution for teachbooks-sphinx-grasple 1.3.0
File Size Uploaded
teachbooks_sphinx_grasple-1.3.0.tar.gz 75.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for teachbooks-sphinx-grasple 1.3.0
File Interpreter ABI Platform
teachbooks_sphinx_grasple-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 131.4 kB

Release files / teachbooks_sphinx_grasple-1.3.0.tar.gz

Download URL teachbooks_sphinx_grasple-1.3.0.tar.gz
Size 75.8 kB
Tags Source
SHA-256 checksum
How to use checksums
75a18baf9d6f84c97b98c4a115a35e6029f8ddac6c64fa3f3a8b5baea8243498
BLAKE2b-256 checksum
How to use checksums
c0df38bda916921efab5ded34852a03dbd15509a2b542fb0b2c38775b4ec865a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Dec 16, 2025.

Transparency log

Release files / teachbooks_sphinx_grasple-1.3.0-py3-none-any.whl

Download URL teachbooks_sphinx_grasple-1.3.0-py3-none-any.whl
Size 55.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
414e20e9036a47b24d3d09b34fa16cf3f7b2758f9e24fb47da0496b3d70c1878
BLAKE2b-256 checksum
How to use checksums
3e7086d1bd35bcf06cdb0aaf59cdec3932cec21750dd276b69856221e25ea6d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Dec 16, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

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