mkdocs-jupyter
Use Jupyter in mkdocs websites
Decision gist · record as of 2026-08-14
Yes, if you maintain mkdocs documentation and want to include Jupyter notebooks as first-class pages. The plugin is stable (Production/Stable status), actively maintained, has no known vulnerabilities, and integrates cleanly into the mkdocs build pipeline. Install it when you have notebooks that belong in your docs and want to avoid manual conversion workflows.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires mkdocs and its dependencies to be installed; notebooks are rendered during the mkdocs build process, not at runtime.
- Low friction install with a pure-Python wheel.
- The package is actively maintained with a recent release and no known vulnerabilities.
License · maintenance · safety
Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing use in commercial and proprietary projects with minimal restrictions—only requiring license and copyright notice retention.
last release 2026-04-17 (119 days) · last repo commit 2026-04-17 · 505 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 514,882 downloads/mo, #6,236 on PyPI
Alternatives
Verify before relying
pip install mkdocs-jupyter
# In mkdocs.yml:
nav:
- Home: index.md
- Notebook: example.ipynb
plugins:
- mkdocs-jupyter- Whether execution of notebooks with complex dependencies (e.g., GPU libraries, external services) works reliably in CI/CD environments.
- Performance characteristics when building documentation with many large notebooks or when execution is enabled.
What it is and what it does
mkdocs-jupyter is a plugin that embeds Jupyter notebooks directly into mkdocs documentation sites. Instead of manually converting notebooks to Markdown, you reference `.ipynb` or `.py` files in your mkdocs navigation, and the plugin handles rendering them with Jupyter's native styling, code highlighting via Pygments, and optional notebook execution before conversion.
The plugin supports multiple rendering modes: you can show full code and output, hide code input, remove prompts, or selectively hide cells using tags. It also handles ipywidgets, caches conversion results for faster rebuilds, and integrates with mkdocs themes like Material. Configuration is done entirely in `mkdocs.yml`, making it straightforward to add notebook pages to existing documentation projects.
Use it for
- Publishing data science tutorials or analyses as part of technical documentation without manually converting notebooks to Markdown.
- Building API documentation that includes executable examples and visualizations rendered from Jupyter notebooks.
- Creating educational materials where notebooks serve as both the source and the published content, keeping them in sync.
- Generating reports or dashboards that combine narrative text, code, and interactive outputs in a static documentation site.
- Sharing reproducible research or methodology documentation where the notebook source is available for download.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you maintain mkdocs documentation and want to include Jupyter notebooks as first-class pages.
The plugin is stable (Production/Stable status), actively maintained, has no known vulnerabilities, and integrates cleanly into the mkdocs build pipeline. Install it when you have notebooks that belong in your docs and want to avoid manual conversion workflows.
Install
mkdocs-jupyter on PyPI
Before you install
Low friction install with a pure-Python wheel. The package is actively maintained with a recent release and no known vulnerabilities. Six runtime dependencies (ipykernel, jupytext, mkdocs-material, mkdocs, nbconvert, pygments) are standard tools in the Jupyter and documentation ecosystem.
Requires mkdocs and its dependencies to be installed; notebooks are rendered during the mkdocs build process, not at runtime.
License in practice
Licensed under Apache-2.0 (permissive), allowing use in commercial and proprietary projects with minimal restrictions—only requiring license and copyright notice retention.
Quickstart
pip install mkdocs-jupyter
# In mkdocs.yml:
nav:
- Home: index.md
- Notebook: example.ipynb
plugins:
- mkdocs-jupyter
Verify before relying
- Whether execution of notebooks with complex dependencies (e.g., GPU libraries, external services) works reliably in CI/CD environments.
- Performance characteristics when building documentation with many large notebooks or when execution is enabled.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 6 packagesipykerneljupytextmkdocs-materialmkdocsnbconvertpygments |
| Maintenance | Actively maintained 119 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 514,882 / month, #6,236 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy |
Evidence: mkdocs_jupyter-0.26.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “jupyter notebooks in mkdocs”
- mkdocs-jupyterConverts Jupyter notebooks and Python scripts into pages for mkdocs…
- nbclientnbclient executes Jupyter notebooks programmatically in different…
- nbstripoutStrips output cells and metadata from Jupyter and IPython notebooks,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Documentation packages
Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.
Sphinx generates professional documentation from reStructuredText source files, producing HTML, PDF, EPUB, and other formats with automatic cross-references, code highlighting, and hierarchical navigation.
Griffe extracts the complete structure and signatures of Python programs to generate API documentation or detect breaking changes in your project's public API.
Install it if you need to programmatically inspect Python code structure, generate API docs, or enforce API stability in CI.
A Sphinx extension that outputs documentation in serialized HTML formats (JSON and pickle) alongside standard HTML.
Alabaster is a clean, responsive Sphinx theme for documentation that requires Python 3.10 or newer and Sphinx 6.2 or newer.
A Sphinx extension that generates HTML help files from reStructuredText documentation source.
See also jupytext · nbconvert · mkdocs-material · ipynb · mkdocs-print-site-plugin · ipynbname · jupyter-book · testbook · mkdocs-github-admonitions-plugin · importnb