Ben Chuanlong Du's Blog

It is never too late to learn.

Useful Tools and Extensions for JupyterLab

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Install/Uninstall Jupyter/Lab Extensions

Install a Jupyter/Lab extension.

pip3 install extension_name

Unnstall a Jupyter/Lab extension.

pip3 uninstall extension_name

Enable an installed Jupyter/Lab extension. Note: An extension is enabled by default once installed.

jupyter serverextension enable --py jupyterlab_code_formatter

Disable an installed Jupyter/Lab extension.

jupyter serverextension disable --py jupyterlab_code_formatter

Extensions/Tools to Avoid

Variable Inspaction in Notebook

  1. makes notebook run slow
  2. why do you want such a tool if you can check any vairable in notebook already?

jupyterLab/debugger

Need the xeus-python kernel to work.

Useful Tools

jupyterlab-lsp

nbdime

nbdime is a tool for diffing and merging Jupyter/Lab notebooks. It works well with Git.

JupyterHub

JupyterHub is a multi-user server for Jupyter notebooks.

euporie

euporie is a text-based user interface for running and editing Jupyter notebooks.

Useful Extensions for JupyterLab

magma-nvim

magma-nvim is a NeoVim plugin for running code interactively with Jupyter.

jupyterlab-vim

jupyterlab-vim provides Vim keybindings for notebook cells in JupyterLab.

jupyter-resource-usage

It seems that people suggest using jupyter-resource-usage instead of jupyterlab-system-monitor .

jupyterlab-system-monitor

Jupyter/Lab Extensions for Spreadsheet

wallneradam/jupyterlab-output-auto-scroll

Automatically scrolls scrollable output cells to bottom when content has changed

jupyterlab-latex

Voila

ipywidgets

Interactive HTML widgets (slider, button, textbox, etc.) for Python Notebook.

pip install jupyterlab_widgets
jupyter labextension install --sys-prefix --py jupyterlab_widgets
jupyter labextension enable --sys-prefix --py jupyterlab_widgets

Examples of custom widget libraries built upon ipywidgets are

  • bqplot a 2d data visualization library enabling custom user interactions.

  • pythreejs a Jupyter - Three.js wrapper, bringing Three.js to the notebook.

  • ipyleaflet a leaflet widget for Jupyter.

ipyvue

Some Other Extensions for JupyterLab

jupyterlab_geojson

pip3 install jupyterlab_geojson
jupyter labextension install --py --sys-prefix jupyterlab_geojson
jupyter labextension enable --py --sys-prefix jupyterlab_geojson

jupyterlab-drawio

jupyterlab-drawio is a standalone embedding of the FOSS drawio/mxgraph package into JupyterLab. If you using a office tool (MS/Google PPT/Slides/Doc), it is suggested that you use the built-in flowchart support instead. Please refer to Text-based Diagram Tools and GUI Mind Mapping Tools for more discussions on flowchart and UML tools.

jupyterlab-quickopen

jupyterlab-quickopen aims to quickly open a file in JupyterLab by typing part of its name. However, it does not work well if the working directory of Jupyter/Lab contains a large number of files. jupyterlab-quickopen eithers hangs or crashes when building indexes for a large number of files. Unfortunately, users use jupyterlab-quickopen mostly when the working directory of Jupyter/Lab get complicated and contains lots of files. So, overall I think jupyterlab-quickopen failed its mission.

As an alternative, it is must faster and more reliable to use the find command to help locate files in a terminal. You can also use the Open Path command to help you open a file without changing directory in the navigation panel in JupyterLab.

jupyterlab-email

jupyterlab-monaco

jupyterlab_spellchecker

jupyterlab-flake8

A non polished product. Too much messages.

jupyterlab_code_formatter

jupyterlab-google-drive

Not sure whether this is useful.

widget-cookiecutter

pip3 install cookiecutter

jupyter_declarativewidgets

jupyter-wysiwyg

not available for jupyterlab yet ...

References

https://jupyterlab.readthedocs.io/en/stable/user/extensions.html

https://github.com/topics/jupyterlab-extension

https://medium.com/@subpath/jupyter-lab-extensions-for-data-scientist-e0d97d529fc1

https://github.com/mauhai/awesome-jupyterlab

Plasma: A learning platform powered by Jupyter

Comments