JupyterLab Widgets Extension
raw JSON → 3.0.16 verified Tue May 12 auth: no python install: verified quickstart: stale
`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.
pip install jupyterlab-widgets Common errors
error Error displaying widget ↓
cause The JupyterLab frontend extension for ipywidgets is either not properly installed, enabled, or there's a version mismatch between `ipywidgets` (Python package) and `jupyterlab-widgets` (frontend extension) preventing the widget from rendering.
fix
Ensure
ipywidgets and jupyterlab_widgets are installed in the correct environment (e.g., pip install ipywidgets jupyterlab_widgets or conda install -c conda-forge ipywidgets jupyterlab_widgets). For JupyterLab 3.0+ and ipywidgets 7.6+, the extension should be enabled automatically, but restarting JupyterLab and your browser, or trying a clean reinstall, can resolve caching or environment issues. For older JupyterLab versions, manual installation via jupyter labextension install @jupyter-widgets/jupyterlab-manager might be required after installing nodejs. error ModuleNotFoundError: No module named 'ipywidgets' ↓
cause The `ipywidgets` Python package, which provides the backend logic for interactive widgets, is not installed or not accessible in the Python environment associated with your Jupyter kernel.
fix
Install the
ipywidgets Python package in the active environment: pip install ipywidgets or conda install -c conda-forge ipywidgets. Ensure the Jupyter kernel you are using is running in this environment. error Error: widget model not found ↓
cause The JupyterLab frontend cannot locate or load the JavaScript model for a specific widget, often due to a mismatch between the `ipywidgets` Python version and the `jupyterlab-widgets` frontend extension version, or a corrupted JupyterLab build.
fix
Update both
ipywidgets and jupyterlab_widgets to compatible versions. For JupyterLab 3 and 4, jupyterlab_widgets 3.x is generally compatible with ipywidgets 7.x and 8.x. Try pip install --upgrade ipywidgets jupyterlab_widgets or conda update ipywidgets jupyterlab_widgets. A complete rebuild of JupyterLab assets might also be necessary via jupyter lab build after updating. error The following extensions may be outdated or specify dependencies that are incompatible with the current version of jupyterlab: @jupyter-widgets/jupyterlab-manager ↓
cause The installed `jupyterlab-widgets` extension, or one of its dependencies, is not compatible with your current JupyterLab version, or there are conflicting extensions. This message appears when running `jupyter labextension list`.
fix
Update
jupyterlab and jupyterlab_widgets to their latest compatible versions. If the problem persists, try uninstalling and reinstalling potentially conflicting extensions or performing a clean JupyterLab rebuild. Ensure ipywidgets and jupyterlab_widgets are installed from the same channel (e.g., all from conda-forge). error FileNotFoundError: [Errno 2] No such file or directory: '...jupyterlab-manager\static\vendors-node_modules_d3-color_src_color_js-node_modules_d3-format_src_defaultLocale_js-node_m-09b215.2643c43f22ad111f4f82.js' ↓
cause This error typically occurs on Windows systems during the installation of `ipywidgets` (which bundles `jupyterlab-widgets` assets) due to the default Windows path length limit (260 characters), as the bundled JavaScript files can create very long nested paths.
fix
Enable long path support in Windows (requires administrator privileges and a system restart, via Group Policy Editor or Registry Editor). Alternatively, try using a virtual environment manager that handles shorter paths, or for
ipywidgets 8.x, consider pinning to an older version like ipywidgets==7.7.0 which installed a smaller jupyterlab-widgets v1.1.11 that might not hit the path limit. Warnings
gotcha It 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. ↓
fix When developing, import widget classes and functions from `ipywidgets`. Ensure both `ipywidgets` and `jupyterlab-widgets` are installed for proper rendering in JupyterLab.
breaking JupyterLab 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). ↓
fix For 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.
gotcha If 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. ↓
fix Ensure `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.
Install
pip install ipywidgets Install compatibility verified last tested: 2026-05-12
python os / libc variant status wheel install import disk
3.10 alpine (musl) ipywidgets wheel - 1.44s 79.3M
3.10 alpine (musl) jupyterlab-widgets wheel - - 17.8M
3.10 alpine (musl) ipywidgets - - 1.42s 56.2M
3.10 alpine (musl) jupyterlab-widgets - - - -
3.10 slim (glibc) ipywidgets wheel 5.1s 1.15s 80M
3.10 slim (glibc) jupyterlab-widgets wheel 1.6s - 18M
3.10 slim (glibc) ipywidgets - - 1.03s 57M
3.10 slim (glibc) jupyterlab-widgets - - - -
3.11 alpine (musl) ipywidgets wheel - 2.11s 83.7M
3.11 alpine (musl) jupyterlab-widgets wheel - - 19.7M
3.11 alpine (musl) ipywidgets - - 2.16s 59.7M
3.11 alpine (musl) jupyterlab-widgets - - - -
3.11 slim (glibc) ipywidgets wheel 5.3s 1.92s 84M
3.11 slim (glibc) jupyterlab-widgets wheel 1.6s - 20M
3.11 slim (glibc) ipywidgets - - 1.66s 60M
3.11 slim (glibc) jupyterlab-widgets - - - -
3.12 alpine (musl) ipywidgets wheel - 2.11s 74.5M
3.12 alpine (musl) jupyterlab-widgets wheel - - 11.5M
3.12 alpine (musl) ipywidgets - - 2.04s 50.5M
3.12 alpine (musl) jupyterlab-widgets - - - -
3.12 slim (glibc) ipywidgets wheel 5.0s 2.13s 75M
3.12 slim (glibc) jupyterlab-widgets wheel 1.5s - 12M
3.12 slim (glibc) ipywidgets - - 1.98s 51M
3.12 slim (glibc) jupyterlab-widgets - - - -
3.13 alpine (musl) ipywidgets wheel - 2.06s 74.3M
3.13 alpine (musl) jupyterlab-widgets wheel - - 11.3M
3.13 alpine (musl) ipywidgets - - 1.99s 50.1M
3.13 alpine (musl) jupyterlab-widgets - - - -
3.13 slim (glibc) ipywidgets wheel 4.9s 2.03s 75M
3.13 slim (glibc) jupyterlab-widgets wheel 1.5s - 12M
3.13 slim (glibc) ipywidgets - - 1.97s 51M
3.13 slim (glibc) jupyterlab-widgets - - - -
3.9 alpine (musl) ipywidgets wheel - 1.46s 55.5M
3.9 alpine (musl) jupyterlab-widgets wheel - - 17.3M
3.9 alpine (musl) ipywidgets - - 1.34s 55.4M
3.9 alpine (musl) jupyterlab-widgets - - - -
3.9 slim (glibc) ipywidgets wheel 5.0s 1.27s 56M
3.9 slim (glibc) jupyterlab-widgets wheel 1.8s - 18M
3.9 slim (glibc) ipywidgets - - 1.21s 56M
3.9 slim (glibc) jupyterlab-widgets - - - -
Imports
- Button
from ipywidgets import Button, IntSlider, interact - display
from IPython.display import display
Quickstart stale last tested: 2026-04-24
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);