Skip to main content
v2026.11,858 entries · CC-BY 4.0

Jupyter Notebook Extensions: Install, List and Manage in Notebook 7

How Jupyter notebook extensions work in Notebook 7, the labextension commands to list, disable and enable them, and what the .ipynb file extension means.

Written and maintained by CASRAI Editorial Board

Last updated

“Jupyter notebook extension” means two different things, and searchers use the phrase for both: an add-on that changes how the notebook interface behaves, and the .ipynb file extension that notebooks are saved with. This guide covers both. The add-on story has changed since Notebook 7, which is why older tutorials about classic “nbextensions” often no longer match what you see on screen.

What extensions are used for in research

An extension adds or changes a feature of the notebook front end, such as a new panel, menu item or editor behaviour. In a research group the practical concern is less which extensions exist than whether everyone who opens the notebook gets the same interface and the same results. Extensions live in the Python environment, so they travel with that environment: record them alongside your packages when you share an analysis (see sharing a reproducible conda environment).

The key change: per the Jupyter Notebook documentation, starting with Notebook 7, front-end extensions for the notebook can be developed as prebuilt JupyterLab extensions, so Notebook 7 can reuse many existing extensions from the JupyterLab ecosystem as they are. The same documentation warns that Notebook 7 might break extensions or other customizations written for the classic notebook.

Install or access (official source only)

Install Jupyter itself from the official project, covered step by step in Anaconda for Jupyter Notebook; this guide does not repeat setup. For extensions, the official JupyterLab documentation states that most JupyterLab extensions can be installed using Python pip or conda packages, so the usual route is to install the extension’s package into the same environment as Jupyter, using the install line on the extension’s own project page.

  • Prebuilt extensions are the preferred type. The JupyterLab documentation calls the prebuilt extension “the preferred JupyterLab extension type”, and it needs no JavaScript rebuild.
  • Extension manager. Since JupyterLab v4, the default manager uses PyPI.org as the source for available extensions. An administrator can disable the manager, in which case use the package route above.
  • Source extensions need Node.js and a rebuild step and are described in the documentation as highly discouraged.

Step-by-step: list, disable and enable an extension

These commands come from the JupyterLab extension documentation. Run them in a terminal, in the environment where Jupyter is installed.

  1. List what is installed: jupyter labextension list
  2. Switch an extension off without removing it: jupyter labextension disable my-extension. This prevents all plugins in that extension from running in JupyterLab.
  3. Switch it back on: jupyter labextension enable my-extension
  4. Remove an extension that was installed as a source extension: jupyter labextension uninstall my-extension. For extensions installed as pip or conda packages, remove the package with the same tool you installed it with.
  5. Run jupyter labextension --help to see every option in your installed version.

The JupyterLab page also warns that there is no check that an extension is compatible with the current JupyterLab version. Confirm the version an extension supports on its project page before installing it.

Output and how to read it

The JupyterLab documentation describes jupyter labextension list as the command that lists the installed extensions. Compare that list between collaborators’ environments when a feature appears for one person and not another, and record the extension names and versions with the rest of your environment.

What the .ipynb file extension means

Jupyter notebook file extension and file extensions

Notebooks are saved with the .ipynb extension. The Jupyter Notebook documentation states that notebook documents are internally JSON files saved with the .ipynb extension, and that because JSON is a plain text format they can be version-controlled and shared with colleagues.

The notebook format documentation (nbformat) describes a notebook at the highest level as a dictionary with a few keys: metadata (a dictionary), nbformat (an integer), nbformat_minor (an integer) and cells (a list). When backward-compatible changes are made to the format, the minor version is incremented. A notebook file is therefore a plain text file you can open in any text editor to see its structure, and compare in version control.

Extensions of the add-on kind do not change this file format; they change the interface. For reproducibility, share the .ipynb file together with a record of the environment, and see reproducibility infrastructure and how to cite software and code for citing what you ran.

Troubleshooting

An extension stopped working after upgrading to Notebook 7

The Notebook documentation says version 7 might break extensions or other customizations. It suggests looking for Notebook 7 compatible versions of the extensions you use. For a critical extension with no compatible version, it points to nbclassic, which provides compatibility with the old notebook interface. Users who do not use extensions simply receive Notebook 7 when they pip install notebook.

A feature disappeared but the extension is installed

Run jupyter labextension list to confirm it is installed. If it was switched off earlier, run jupyter labextension enable my-extension.

The extension manager is missing

The JupyterLab documentation notes the manager may be disabled by an administrator. Install the extension’s package with pip or conda instead.

Jupyter notebook setup questions

For installing Jupyter and opening your first notebook, including how to set up a Jupyter notebook through Anaconda, use Anaconda for Jupyter Notebook.

Free alternatives (ways to get extension features)

Route What the documentation says
Prebuilt JupyterLab extension via pip or conda The preferred extension type; most JupyterLab extensions install as pip or conda packages; no JavaScript rebuild.
Extension manager in JupyterLab Since JupyterLab v4 it uses PyPI.org as the source; an administrator may disable it.
Source extension Needs Node.js and a rebuild; highly discouraged.
nbclassic Provides compatibility with the old notebook interface for extensions that have no Notebook 7 version.

FAQ

What is the Jupyter notebook file extension?

It is .ipynb. The file is JSON, saved as plain text.

Can Notebook 7 use JupyterLab extensions?

Yes, for many of them. The Notebook documentation says Notebook 7 can reuse many existing extensions from the JupyterLab ecosystem as they are.

How do I see which extensions are installed?

Run jupyter labextension list.

Does disabling an extension uninstall it?

No. jupyter labextension disable stops the extension’s plugins from running; jupyter labextension enable restores them.

How do I set up Jupyter notebook?

See Anaconda for Jupyter Notebook for installation and first run.

Sources (official docs)

Follow CASRAI

Research-administration guidance, standards updates and independent tool reviews.

Ask CASRAI · free to try

Ask about Jupyter Notebook Extensions: Install, List and Manage in Notebook 7

Ask your first 2 questions free below. Subscribers get 150 a day for $29 a month.

An AI assistant specialized in research administration. It cites the sources behind every answer, labels web answers and says when it can't answer.

Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.

Works on this site and inside Claude, Cursor and the AI tools you already use.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →

Ask CASRAI · Regulatory Radar

Research-admin question? Get an answer that links its sources.

An AI assistant specialized in research administration. Every answer links its sources to check before you act. 2 questions free, no account. $29/month after.

  • Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.
  • Every answer numbers its sources and links each one, so you can check the source yourself.