Install & Compatibility
Where this runs
tested against v1.4.1 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 115.1MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 8.8s · import 0.000s · 112MB
117MB installed
● package 117MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
nbsphinx_link
✓ extensions = ['nbsphinx_link']
✗ extensions = ['nbsphinx-link']
Use underscore not hyphen in Sphinx extensions list
Basic setup in Sphinx conf.py
# In conf.py
import os
import sys
sys.path.insert(0, os.path.abspath('.'))
extensions = ['nbsphinx', 'nbsphinx_link']
# Create a symlink or use nbsphinx-link targets
# Example: create a symlink to an external notebook
# os.symlink('/path/to/external/notebook.ipynb', 'linked_notebook.ipynb')
Upgrade
Version history
1.4.1latest on PyPI · released May 29, 2026
Audit
Dependencies
nbsphinxrequiredRequired for processing notebooks
sphinxrequiredRequired extension framework