`jupyterlab-widgets` is the JupyterLab frontend extension that provides the necessary framework for rendering interactive `ipywidgets` within JupyterLab notebooks and interfaces. It enables the rich interactive experiences defined by the core `ipywidgets` Python library. As of version 3.0.16, this extension is compatible with JupyterLab 3 and 4, and for many modern setups, it is automatically handled or included when `ipywidgets` is installed.
Install & Compatibility
Where this runs
tested against v3.0.16 · 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
py 3.10
9/10 runs
9/10 runs
py 3.11
9/10 runs
9/10 runs
py 3.12
9/10 runs
9/10 runs
py 3.13
9/10 runs
9/10 runs
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
Button
✓ from ipywidgets import Button
✗ from jupyterlab_widgets import Button
This quickstart demonstrates how to create and display a simple integer slider using `ipywidgets`, which `jupyterlab-widgets` enables in JupyterLab. It also shows the `interact` function for automatically creating widgets for function arguments.
from ipywidgets import IntSlider, interact
from IPython.display import display
def f(x):
print(x)
# Create a slider widget
slider = IntSlider(min=0, max=100, step=1, description='Value:')
display(slider)
# Or use interact for quick interactive functions
interact(f, x=10);
Debug
Known issues
gotchaIt is important to distinguish between `jupyterlab-widgets` and `ipywidgets`. `ipywidgets` is the core Python library for defining and creating interactive widgets, while `jupyterlab-widgets` is the JupyterLab frontend extension responsible for rendering these widgets. Users primarily interact with `ipywidgets` in their Python code.fixWhen developing, import widget classes and functions from `ipywidgets`. Ensure both `ipywidgets` and `jupyterlab-widgets` are installed for proper rendering in JupyterLab.
affects: All versions
breakingJupyterLab version compatibility for the `jupyterlab-widgets` extension has historically required specific installation steps. For JupyterLab 1 or 2, manual `jupyter labextension install` was often necessary. JupyterLab 3.0+ and `ipywidgets>=7.6.0` typically handle the extension automatically, but compatibility issues can still arise, especially with major JupyterLab upgrades (e.g., to JupyterLab 4).fixFor JupyterLab 3.0 and newer, `pip install ipywidgets` is usually sufficient. If issues persist, ensure `jupyterlab-widgets` is also explicitly installed via `pip install jupyterlab-widgets` and check `jupyter labextension list` for its status. For older JupyterLab versions, consult the `jupyterlab-widgets` PyPI page for specific `jupyter labextension install` commands.
affects: < JupyterLab 3.0
gotchaIf JupyterLab and your Python kernel (with `ipywidgets`) are installed in separate virtual environments (e.g., using different Conda environments), `jupyterlab-widgets` must be installed in the environment where JupyterLab is running, and `ipywidgets` must be installed in each kernel's environment that will use widgets.fixEnsure `jupyterlab-widgets` is present in the JupyterLab environment and `ipywidgets` in the kernel environment. Use `conda list` or `pip list` in both environments to verify.
affects: All versions with isolated environments
Audit
Dependencies
ipywidgetsrequiredProvides the core Python API and logic for interactive widgets that this extension renders.
jupyterlabrequiredThe integrated development environment where this extension operates.