JupyterLab Visual Debugger: Installation, Features, and Usage
This article introduces the newly released JupyterLab visual debugger, explains why debugging is needed in Jupyter, provides step‑by‑step installation commands for the frontend extension and xeus‑python kernel, and highlights key UI features and related VS Code visual debugging tools.
JupyterLab now offers a visual debugger extension, addressing the long‑standing lack of graphical debugging support in Jupyter notebooks and labs.
Why Jupyter needs debugging – While Jupyter excels at interactive data analysis, large codebases still benefit from traditional IDE debugging capabilities; the new debugger brings breakpoint setting, variable inspection, and call‑stack navigation directly into the notebook environment.
Installation
To enable the debugger, install the frontend extension:
<code>jupyter labextension install @jupyterlab/debugger</code>Then install the backend kernel that implements the Jupyter Debug Protocol, currently xeus-python :
<code>conda install xeus-python -c conda-forge</code>After both components are installed, the debugger can be used immediately, and an online demo environment is available at:
https://hub.gke.mybinder.org/user/jupyterlab-debugger-hwxovlw4/lab/tree/examples/index.ipynb
xeus‑python kernel – xeus is a C++ implementation of the Jupyter kernel protocol; xeus‑python provides a lightweight, pluggable kernel with concurrent control channel handling, making it suitable for building Python (and other language) kernels and supporting the new debugger.
Debugger UI features
Sidebar resource explorer with source preview and call‑stack navigation.
Inline breakpoint setting next to code cells and consoles.
Visual markers indicating the current execution point.
Read‑only mode to view previously executed cells after deletion.
Variable explorer with tree and table views, supporting rich rendering.
The debugger aims to work with any kernel that supports the Debug Adapter Protocol, allowing language‑specific extensions to provide appropriate debugging interfaces.
VS Code visual debugging tools – The article also mentions a VS Code real‑time visual debugger that can display data structures such as linked lists, trees, tables, and plots, offering customizable visualizers like Plotly, Tree, Grid, and Text visualizations.
References:
https://blog.jupyter.org/a-visual-debugger-for-jupyter-914e61716559
https://www.reddit.com/r/MachineLearning/comments/foum00/n_jupyter_visual_debugger/
Python Programming Learning Circle
A global community of Chinese Python developers offering technical articles, columns, original video tutorials, and problem sets. Topics include web full‑stack development, web scraping, data analysis, natural language processing, image processing, machine learning, automated testing, DevOps automation, and big data.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.