Backend Development 7 min read

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.

Python Programming Learning Circle
Python Programming Learning Circle
Python Programming Learning Circle
JupyterLab Visual Debugger: Installation, Features, and Usage

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/

pythonDebuggerVS CodeJupyterxeus-python
Python Programming Learning Circle
Written by

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.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.