Skip to main content

munchboka-edutools

Reusable Sphinx / Jupyter Book directives and assets for Norwegian educational content.

NEW: Includes muncho - a command-line tool for building beautiful, print-ready books with enhanced typography, layout, and automatic LaTeX math rendering for PDFs. See CLI_README.md for details.

Key Features

✨ Auto-configured Sphinx extensions for Jupyter Book
📚 Custom educational directives (quiz, dialogue, plots, animations, etc.)
🖨️ Print-optimized PDF builds with proper typography
🧮 Automatic PDF math rendering - LaTeX expressions work seamlessly in PDFs
🎨 Multiple build profiles (print, web, custom)
🎬 Animated plots - Create animations with transparent backgrounds (WebP/GIF)
📄 Print-friendly CSS - Browser "Print to PDF" creates clean problem sheets with answer keys

Install

pip install munchboka-edutools

Optional (nicer progress bars during slow builds, e.g. interactive-graph frame generation):

pip install munchboka-edutools[progress]

Usage

As Sphinx Extensions (Jupyter Book _config.yml)

sphinx:
  extra_extensions:
    - munchboka_edutools

All packaged directives are auto-registered. Static assets (including print-friendly CSS and JS) are placed under _static/munchboka/ during the build.

Print-Friendly PDFs

Simply press Ctrl+P (or Cmd+P) in your browser when viewing any page to create a clean PDF with:

  • All tabs flattened with part labels (a, b, c, etc.)
  • Answers and solutions hidden from main content
  • Automatic answer key page at the end
  • CAS popup buttons hidden
  • Better page breaks

See docs/print_pdf.md for details.

As Build Tool

Build books with enhanced formatting:

# Print-optimized build (includes automatic PDF math rendering)
muncho build matematikk_1t --profile print

# Web-optimized build
muncho build matematikk_r1 --profile web

# See all options
muncho --help

PDF Math Rendering: When building PDFs, muncho automatically configures sphinx.ext.imgmath to render LaTeX math expressions as high-quality SVG images. No changes to your source files needed!

See CLI_README.md for full CLI documentation and QUICKSTART.md for a quick start guide.

Development

Clone and install dev extras:

pip install -e .[dev]

Local demo book

Build the embedded demo book:

jupyter-book build book/

Adding a new directive

  1. Create src/munchboka_edutools/directives/my_directive.py exposing setup(app).
  2. The package auto-loads modules under munchboka_edutools.directives.
  3. Add an example page in book/examples/.

Testing

Run tests:

pytest -q

Quick Links

Releasing

Tag a version (v0.1.0) and the GitHub Action will build and publish.

License

MIT

Release files for munchboka-edutools 0.6.12

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

Source distribution (sdist)

Source distribution for munchboka-edutools 0.6.12
File Size Uploaded
munchboka_edutools-0.6.12.tar.gz 41.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for munchboka-edutools 0.6.12
File Interpreter ABI Platform
munchboka_edutools-0.6.12-py3-none-any.whl Python 3 none any Details

Total release size: 43.0 MB

Release files / munchboka_edutools-0.6.12.tar.gz

Download URL munchboka_edutools-0.6.12.tar.gz
Size 41.3 MB
Tags Source
SHA-256 checksum
How to use checksums
2c9bc7552b2b8ed8d0cccebe548a1dfd6f38c8db72bb72c72e927eb040533bbc
BLAKE2b-256 checksum
How to use checksums
c0dd57a1cea24d71033b7546463dc9fc6b0cd7b4ba04c79e51141a007a61615c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / munchboka_edutools-0.6.12-py3-none-any.whl

Download URL munchboka_edutools-0.6.12-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
ddf8e046644f7232af73a6d7a943cc6435346ef58f11fe8cced33a04152e6e47
BLAKE2b-256 checksum
How to use checksums
983bb85fc44b1d15b854754b5170f6bf8484aae5c60473f2d1fbea4a70d295a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.6

2 release files

0.8.5

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.8

2 release files

0.7.7

2 release files

0.7.6

2 release files

0.7.5

2 release files

0.7.4

2 release files

0.7.3

2 release files

0.7.0

2 release files

This release

0.6.12 This release

2 release files

0.6.11

2 release files

0.6.10

2 release files

0.6.9

2 release files

0.6.8

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.39

2 release files

0.3.38

2 release files

0.3.37

2 release files

0.3.36

2 release files

0.3.35

2 release files

0.3.33

2 release files

0.3.32

2 release files

0.3.31

2 release files

0.3.25

2 release files

0.3.24

2 release files

0.3.23

2 release files

0.3.22

2 release files

0.3.21

2 release files

0.3.20

2 release files

0.3.19

2 release files

0.3.18

2 release files

0.3.17

2 release files

0.3.15

2 release files

0.3.14

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

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.34

2 release files

0.1.33

2 release files

0.1.32

2 release files

0.1.31

2 release files

0.1.30

2 release files

0.1.29

2 release files

0.1.28

2 release files

0.1.20

2 release files

0.1.19

2 release files

0.1.18

2 release files

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

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.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