14 JupyterLab Extensions

JupyterLab is the next generation Jupyter user interface, employing user interface framework components different from the classic notebook. This means that classic notebook extensions will not work in the JupyterLab context.

To migrate “extension enhanced” notebooks into the JupyterLab context, classic notebook extensions will have to be ported to JupyterLab, or equivalents found amongst the currently available JupyterLab extensions.

The following JupyterLab extensions offer similar functionality to classic notebook extensions although they may not use the same metadata or tag components to enable or declare features, so conversion of notebook .ipynb may be required to update metadata from classic notebook extension metadata to metadata formats expected by JupyterLab extensions.

14.1 Collapsible Headings

The JupyterLab Collapsible_Headings extension ostensibly works in the same way as the classic notebook extension, using a heading_collapsed metadata attribute in a notebook cell to identify the header from which a collapse begins.

However, the value assigned to heading_collapsed is not the same in the JupyterLab and classic extensions. In the classic extension, the assignment is to the boolean true; in the JupyterLab extension, the assignment is to the string "true".

See this related issue requesting metadata parity across extensions.

jupyter-scribe JupyterLab extension “transforms Markdown cells into rich-text-editing cells, powered by ProseMirror”.