Solved here: https://github.com/ipython-contrib/IPython-notebook-extensions/issues/282. The ~/.jupyter/nbconfig/notebook.json file must be edited to use python-markdown/main instead of python-markdown.

Answer from Jesse Lord on Stack Overflow
🌐
Jupyter Community Forum
discourse.jupyter.org › jupyterlab › extensions
Lazy loading of jupyter labextensions - extensions - Jupyter Community Forum
March 8, 2024 - Specifically, I’m curious whether the JavaScript files associated with Jupyter labextensions are loaded only when the extension is in use, or if all the JS files associated with the labextensions are re-loaded on a jupyterlab page reload. Also I observed that the lazy loading is not working w...
🌐
Jupyter
tljh.jupyter.org › en › latest › howto › admin › enable-extensions.html
Enabling Jupyter Notebook extensions — The Littlest JupyterHub documentation
sudo -E jupyter contrib nbextension install --sys-prefix · Then, you will enable the extensions you would like to use. The syntax for this is jupyter nbextension enable followed by the path to the desired extension’s main file.
Discussions

Jupyter Notebook Extensions Fail to Load - Stack Overflow
I am running Ubuntu 14.04 in virtual box with a recent anaconda install. I installed jupyter notebooks using conda. I have followed all of the documentation that I can find online to install notebook More on stackoverflow.com
🌐 stackoverflow.com
python - How to add automatically extension to Jupyter (ipython) notebook? - Stack Overflow
I have installed extension 'calico-document-tools' and I can load it from within Jupyter notebook using: %%javascript IPython.load_extensions('calico-document-tools'); How can I load it automatica... More on stackoverflow.com
🌐 stackoverflow.com
IPython: load extension automatically upon start - Stack Overflow
In IPython, I can load a custom extension using simple command: %load_ext physics This will load the file ~/.ipython/extensions/physics.py. How can I tell IPython to load the extension automatical... More on stackoverflow.com
🌐 stackoverflow.com
python - Error loading Jupyter Notebook Extensions - Stack Overflow
I am using a Macbook with OS Sierra, and running Python 3.6.1 and Jupyter Notebook Server 5.0.0 I installed Jupyter Notebook extensions, following the instructions as mentioned on https://github.com/ More on stackoverflow.com
🌐 stackoverflow.com
🌐
GitHub
github.com › jupyter › notebook › issues › 365
How to load extension automatically after a new notebook tab created? · Issue #365 · jupyter/notebook
August 30, 2015 - In IPython Notebook 2.X I can pass --ext parameter to ipython notebook command line to automatically load an extension so that I can do some initialization work. Just like ipython notebook --ext=mymodule.extention. But when I upgrade to new jupyter 4.X, this way is not work any more, it'll ...
Author   limodou
🌐
GitHub
github.com › ipython-contrib › jupyter_contrib_nbextensions
GitHub - ipython-contrib/jupyter_contrib_nbextensions: A collection of various notebook extensions for Jupyter · GitHub
To do this, you can use a Jupyter subcommand: jupyter nbextension enable <nbextension require path> ... Alternatively, and more conveniently, you can use the jupyter_nbextensions_configurator server extension, which is installed ...
Starred by 5.3K users
Forked by 797 users
Languages   JavaScript 54.0% | HTML 34.8% | Python 7.0% | TeX 2.1% | CSS 1.1% | Jupyter Notebook 0.8%
🌐
Read the Docs
jupyter-contrib-nbextensions.readthedocs.io › en › latest › install.html
Installing jupyter_contrib_nbextensions — jupyter_contrib_nbextensions 0.5.0 documentation
To use an nbextension, you’ll ... to load it. To do this, you can use a Jupyter subcommand: jupyter nbextension enable <nbextension require path> ... Alternatively, and more conveniently, you can use the jupyter_nbextensions_configurator server extension, which is installed ...
🌐
GitHub
github.com › Jupyter-contrib › jupyter_nbextensions_configurator
GitHub - Jupyter-contrib/jupyter_nbextensions_configurator: A jupyter notebook serverextension providing config interfaces for nbextensions.
The jupyter_nbextensions_configurator jupyter server extension provides graphical user interfaces for configuring which nbextensions are enabled (load automatically for every notebook).
Starred by 987 users
Forked by 123 users
Languages   JavaScript 56.3% | Python 36.0% | CSS 4.2% | HTML 2.7% | JavaScript 56.3% | Python 36.0% | CSS 4.2% | HTML 2.7%
Find elsewhere
🌐
Jupyter Community Forum
discourse.jupyter.org › jupyterlab
Dynamic JupyterLab extension loading - JupyterLab - Jupyter Community Forum
January 20, 2020 - I wanted to share the news that ... to (dynamically) load other extensions – no more rebuilding for developing JLab extensions! 🙂 A simple refresh of the page will soon be enough! The repository is here: https://github.com/wolfv/jupyterlab-dynext And you can find ...
🌐
Reddit
reddit.com › r/ipython › auto load extension in jupyter notebook on start
r/IPython on Reddit: Auto Load Extension In Jupyter Notebook On Start
September 5, 2019 - Ah, you mean jupyter_contrib_nbextensions... I found a black extension there which works, thank you!
🌐
Readthedocs
jupyter-server.readthedocs.io › en › latest › developers › extensions.html
Server Extensions — Jupyter Server documentation
The simplest way to write a Jupyter Server extension is to write an extension module with a _load_jupyter_server_extension function.
🌐
GitHub
github.com › jupyterlab › jupyterlab › issues › 14965
Jupyter Lab does not find extensions · Issue #14965 · jupyterlab/jupyterlab
[I 2023-08-13 09:53:21.191 LabApp] JupyterLab extension loaded from /opt/homebrew/lib/python3.11/site-packages/jupyterlab [I 2023-08-13 09:53:21.191 LabApp] JupyterLab application directory is /opt/homebrew/Cellar/python@3.11/3.11.4_1/Frameworks/Python.framework/Versions/3.11/share/jupyter/lab [I 2023-08-13 09:53:21.191 LabApp] Extension Manager is 'pypi'.
Author   ghost
🌐
GitHub
github.com › jupyterhub › jupyterhub › issues › 305
Loading notebook extensions for all users on the hub · Issue #305 · jupyterhub/jupyterhub
September 21, 2015 - Installing and activating the extensions on standalone jupyter works fine. For jupyterhub, it works as well but only per user basis (i.e.
Author   SelenaBaset
🌐
JupyterLab Documentation
jupyterlab.readthedocs.io › en › 1.2.x › user › extensions.html
Extensions — JupyterLab 1.2.21 documentation
Once the rebuild completes, a dialog will pop up, indicating that a reload of the page is needed in order to load the latest build into the browser. If you ignore the rebuild notice by mistake, simply refresh your browser window to trigger a new rebuild check. When there are some installed extensions, they will be shown in the “Installed” section. These can then be uninstalled or disabled. Disabling an extension will prevent it from being activated, but without rebuilding the application. During installation of an extension, JupyterLab will inspect the package metadata for any instructions on companion packages.
🌐
Jupyter Community Forum
discourse.jupyter.org › jupyterlab
Loading extensions through HTMLManager? - JupyterLab - Jupyter Community Forum
May 9, 2019 - I’ve created a front-end widget ... jupyter notebook. I’m guessing that it’s because setting up the kernel manager manually isn’t loading the Jupyter extensions (plotlywidget in this cas......
🌐
Reddit
reddit.com › r/jupyter › [help] python developer struggling with jupyterlab extension setup - can't get past installation stage
r/Jupyter on Reddit: [HELP] Python Developer Struggling with JupyterLab Extension Setup - Can't Get Past Installation Stage
November 24, 2024 -

Hi Jupyter community! I'm primarily a Python/data analysis developer trying to create my first JupyterLab extension. I'm stuck at a really frustrating stage and could use some guidance.

What I'm Trying to Build: A JupyterLab extension that shows tooltips of Python function content when hovering over markdown links in Jupyter notebooks. For example, if I have a function:

def my_function():
    """
    My docstring
    """
    return "Hello"

And a markdown link [Click here](#my_function), hovering over it should show the function content.

My Current Setup:

  • JupyterLab 4.2.6

  • Python 3.10

  • Using virtual environment

  • Project structured following JupyterLab extension template

  • GitHub repo: https://github.com/Warren8824/jupyter-hover-tooltip.git

The Problem: Even though I'm just trying to get the basic extension recognized before implementing Python functionality:

  1. The extension builds without errors:

   npm run build  # Succeeds
   pip install -e .  # Succeeds
   jupyter labextension develop . --overwrite  # Succeeds

2. Server logs show it's loading:

   jupyter_hover_tooltip | extension was successfully loaded

3. But the extension is invisible in:

  • jupyter labextension list output

  • JupyterLab's Extension Manager UI

Key Files in Place:

  • setup.py with proper Python packaging

  • package.json with JupyterLab extension metadata

  • init.py with proper extension registration

  • webpack.config.js for building JavaScript components

What's Confusing Me:

  1. I understand Python packaging but this hybrid Python/JavaScript setup is new to me

  2. Everything seems to build correctly but JupyterLab won't recognize the extension

  3. I had it working once before but can't reproduce that success

  4. Can't even get to testing the actual Python functionality because I'm stuck at setup

Questions:

  1. Is this a Python packaging issue or a JupyterLab configuration problem?

  2. Are there specific Python-side debugging steps I should take?

  3. How can I verify if my Python package is correctly registering with JupyterLab?

I've spent over a day just trying to get past this setup stage. As someone who usually works with pure Python, I feel like I'm missing something fundamental about how Python packages interact with JupyterLab's extension system.

All code is in the GitHub repo. Any help, especially from Python developers who have experience with JupyterLab extensions, would be greatly appreciated!

Environment Details:

jupyter --version output:
IPython          : 8.29.0
ipykernel        : 6.29.5
ipywidgets       : 8.1.5
jupyter_client   : 8.6.3
jupyter_core     : 5.7.2
jupyter_server   : 2.14.2
jupyterlab       : 4.2.6
nbclient         : 0.10.0
nbconvert        : 7.16.4
nbformat         : 5.10.4
notebook         : 7.2.2
traitlets        : 5.14.3
🌐
GitHub
github.com › jupyterlab › jupyter-ai › issues › 384
Bug while loading extension using %load_ext jupyter_ai · Issue #384 · jupyterlab/jupyter-ai
September 11, 2023 - 74 """ 75 try: ---> 76 return self._load_extension(module_str) 77 except ModuleNotFoundError: 78 if module_str in BUILTINS_EXTS: File /opt/anaconda3/envs/syft/lib/python3.9/site-packages/IPython/core/extensions.py:91, in ExtensionManager._load_extension(self, module_str) 89 with self.shell.builtin_trap: 90 if module_str not in sys.modules: ---> 91 mod = import_module(module_str) 92 mod = sys.modules[module_str] 93 if self._call_load_ipython_extension(mod): File /opt/anaconda3/envs/syft/lib/python3.9/importlib/__init__.py:127, in import_module(name, package) 125 break 126 level += 1 --> 127 ret
Author   koenvanderveen