skillfed

jupyter-cache

A defined interface for working with a cache of jupyter notebooks.

jupyter-cache v1.0.1 1.0M downloads/30d#4,533 on PyPI60
Permissive license Active released

What it is and what it does

jupyter-cache provides a persistent cache layer for Jupyter notebook execution outputs. It stores the outputs of notebooks so that when you rebuild documentation or re-run notebooks, the cached results can be reused instead of re-executing the entire notebook—useful when notebooks contain long-running computations or generate outputs in formats that don't naturally store results.

The package is designed for notebooks with deterministic execution: same environment, no random code, no time-dependent external resources. It separates content edits from code cell changes, so only actual code modifications trigger re-execution. The package is actively used by jupyter-book to enable fast document rebuilds and is maintained by the Executable Books project.

Use it for:

  • Speed up documentation builds in jupyter-book by caching notebook execution outputs across rebuilds.
  • Avoid re-running expensive computations (long simulations, data processing) when only notebook text or formatting changes.
  • Maintain consistent outputs across multiple notebook runs in CI/CD pipelines without re-executing deterministic code.
  • Cache outputs from notebooks that depend on external data or scripts that rarely change.
  • Enable parallel notebook execution with shared cache for teams working on the same documentation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Caches Jupyter notebook execution outputs to avoid re-running notebooks with deterministic outputs, enabling fast rebuilds of documentation and notebooks that depend on long-running computations.

Yes, if you maintain Jupyter notebooks or documentation that re-builds frequently and contains long-running code. The package is actively maintained, has no known vulnerabilities, and low install friction. Not necessary for one-off notebooks or those with non-deterministic outputs.

Install

jupyter-cache on PyPI

pip

pip install jupyter-cache

uv

uv add jupyter-cache

poetry

poetry add jupyter-cache

Installing jupyter-cache

Before you install

Low friction install with 8 straightforward runtime dependencies. Actively maintained with recent commits; last release was 637 days ago but the repository shows ongoing activity as of 2026-08-03.

License in practice

Licensed under MIT (permissive), so you can use, modify, and distribute the package freely with minimal restrictions.

Quickstart

pip install jupyter-cache

from jupyter_cache import CacheManager
cm = CacheManager()
cm.cache_notebook_file('notebook.ipynb')

Requires Python 3.9 or later; notebooks must have deterministic outputs (same environment, no random code, no time-dependent external resources).

Verify before relying

  • Whether the cache correctly handles notebook cell dependencies and invalidation across Python package updates or git branch changes.
  • Performance characteristics and cache size limits for large numbers of cached notebooks.
  • Compatibility with recent versions of jupyter-book and other downstream tools that depend on this package.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 8 — attrs, click, importlib-metadata, nbclient, nbformat, pyyaml, sqlalchemy, tabulate
Maintenance actively maintained — 637 days since the last release
Last repo commit
First released
Downloads 1,002,718/month — #4,533 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jupyter_cache-1.0.1-py3-none-any.whl

Keywords: sphinx, extension, material, design, web, components

Development Status :: 4 - BetaFramework :: Sphinx :: ExtensionIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python Modules

Tags

jupyter notebook cachingcache notebook executionavoid re-running notebooksnotebook output cachedeterministic notebook executionfast notebook rebuildsjupyter-book caching
notebook-cachingdocumentation-buildjupyter-ecosystem

More Python Modules packages