Registry / web-framework / nbclassic

nbclassic

JSON →
library1.3.3pypypi✓ verified 23d ago

Jupyter NbClassic is an implementation of the classic Jupyter Notebook 6 as a Jupyter Server extension. It allows users to continue using the Notebook 6 tech-stack and its associated extensions and customizations alongside newer Jupyter environments like Notebook 7 or JupyterLab. The project is currently at version 1.3.3 and receives ongoing maintenance, primarily focusing on security and bug fixes while providing a stable, familiar interface. [1, 6, 7, 14]

pip install nbclassic
INSTALL
IMPORT
SIG · NBCLASSIC
N
nbclassic
web-frameworkpythonv1.3.3
Install
13.4s avg
Import
Disk
186MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.3.3 · 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
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 198.7MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 13.4s · import 0.000s · 182MB
186MB installed
● package 186MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

NBClassicApp
from nbclassic import NBClassicApp
from nbclassic import NBClassicApp

To launch the classic Jupyter Notebook interface, simply run `jupyter nbclassic` in your terminal. This will start a Jupyter Server and open the notebook interface in your web browser, typically at `http://127.0.0.1:8888`. [1, 2]

jupyter nbclassic
jupyter --version
Debug
Known issues
breakingStatic asset paths for the classic Notebook were changed in nbclassic v1.3.2, breaking the ability to serve them from original endpoints. This was fixed in v1.3.3 by copying assets to legacy paths. Users on v1.3.2 may experience UI issues. [1]
fix
Upgrade to nbclassic v1.3.3 or newer.
affects: 1.3.2
gotchaWhen nbclassic is installed alongside Jupyter Notebook 7 (or JupyterLab), its UI will be served under the `/nbclassic/tree` base path, rather than the default `/tree` path. This is to avoid conflicts with Notebook 7, which uses `/tree`. [10, 11]
fix
Access nbclassic at the `/nbclassic/tree` URL endpoint in your browser. Notebook 7 may provide a dropdown to switch interfaces. [10, 11]
affects: All versions when co-existing with Notebook 7
breakingSupport for Python 3.8 was dropped in nbclassic v1.3.0. Attempts to install or run nbclassic on Python 3.8 or older will fail. [15]
fix
Ensure your Python environment is 3.9 or newer.
affects: <1.3.0
gotchaOlder `notebook` package versions (e.g., `notebook==6.5.1`) might have strict dependency requirements on specific `nbclassic` versions (e.g., `nbclassic==0.4.5`). Installing a newer `nbclassic` (e.g., `0.4.6` or `1.x.x`) can lead to dependency conflicts during `pip install`. [16]
fix
Carefully manage dependencies, potentially using a virtual environment and checking `notebook`'s explicit `nbclassic` requirements. Consider upgrading to `notebook` v7+ if possible, which uses `jupyter-server` and `nbclassic` more smoothly. [16]
affects: nbclassic versions >0.4.5 when `notebook<7` is present
breakingEntrypoints for extensions were renamed in NbClassic (e.g., `jupyter-nbclassic-extension`, `jupyter nbclassic-serverextension`, `jupyter-nbclassic-bundlerextension`). Older commands or configurations using `jupyter nbextension` for nbclassic might fail or target the wrong server. [7, 8]
fix
Update scripts and configurations to use the new `jupyter-nbclassic-extension` (or other relevant `jupyter-nbclassic-*` commands) for managing nbclassic extensions. [8]
affects: All versions, relative to Notebook 6 entrypoints
gotchaWhen configuring the startup directory for nbclassic (especially alongside JupyterLab >= 3), use `c.ServerApp.root_dir` in `jupyter_server_config.py` instead of the older `c.NotebookApp.notebook_dir` in `jupyter_notebook_config.py`. [18]
fix
Use `jupyter server --generate-config` to create the correct configuration file and set `c.ServerApp.root_dir` for the desired startup path. [18]
affects: All versions, particularly when Jupyter Server is the backend
Upgrade
Version history
1.3.3latest on PyPI · released Sep 16, 2025
Audit
Dependencies
pythonrequiredRequired Python version.
jupyter-serverrequirednbclassic is a Jupyter Server extension and requires it to run.
Agent activity
14 hits · last 30 days
node
12
Resources
nbclassic — pip install nbclassic · libregistry