Serdar Yegulalp
Senior Writer

Data notebook for Python, R gets reworked for the web

news analysis
Aug 22, 20163 mins

JupyterLab creates powerful and fluid live data notebooks powered by Python, R, and other superstars of big data programming

Jupyter, the interactive data notebook for visualization and analysis with languages like Python and R, is undergoing a quiet but major reworking into a new product, JupyterLab.

Jupyter’s popularity extends beyond scientific or technical applications. Developers routinely share code snippets, sample output, and discussions of that output via Jupyter notebooks exported to HTML.

But ongoing struggles with the underlying code and API set have pushed Jupyter’s developers to rework the project from the inside out and provide a new UI to match.

Last month, Jupyter’s developers took to their blog to discuss the details of the still-under-wraps JupyterLab. The code is in an alpha state — the latest release, as of last week, is version 0.2 — but the developers are confident even at this early stage that the project’s basic direction will be clear.

jupyterlab image Project Jupyter

JupyterLab’s new interface is akin to IDEs like Microsoft’s Visual Studio, with dockable panels and tabbed controls allowing for multiple workflow styles.

JupyterLab uses a web-based UI that’s akin to the tab-and-panel interface used in IDEs like Visual Studio or Eclipse. Notebooks, command-line consoles, code editors, language references, and many more items can be arranged in various combinations, powered by the PhosphorJS framework.

“The entire JupyterLab [project] is built as a collection of plugins that talk to kernels for code execution and that can communicate with one another,” the developers wrote. “We hope the community will develop many more plugins for new use cases that go far beyond the basic system.”

JupyterLab is built as a plugin-powered framework, following Jupyter’s pattern of being language-agnostic. Jupyter provides glue code and UI/UX components, while support for each language within Jupyter is provided by a third-party kernel.

The best parallel for JupyterLab’s UI might be projects like Visual Studio Code, which is also powered by a web-based interface. But JupyterLab doesn’t simply allow the UI to be provided anywhere a web browser runs, but empowers what it describes as “multiple workflow needs,” where a user can “move from a Notebook/narrative focus to a script/console one” as needed.

Aside from the Jupyter team, JupyterLab’s major partners include Tech at Bloomberg, which has previously supported both the Jupyter core project and contributed add-ons to it (such as the BQPlot interactive graphing/plotting library), and Continuum Analytics. The latter outfit is the creator of Anaconda, a popular Python distribution with enterprise support and cloud-hosting options.

Once JupyterLab hits a proper 1.0 release, it’ll likely start showing up in cloud environments as a front end for number-crunching platforms that have since become a big hit there.

Serdar Yegulalp

Serdar Yegulalp is a senior writer at InfoWorld. A veteran technology journalist, Serdar has been writing about computers, operating systems, databases, programming, and other information technology topics for 30 years. Before joining InfoWorld in 2013, Serdar wrote for Windows Magazine, InformationWeek, Byte, and a slew of other publications. At InfoWorld, Serdar has covered software development, devops, containerization, machine learning, and artificial intelligence, winning several B2B journalism awards including a 2024 Neal Award and a 2025 Azbee Award for best instructional content and best how-to article, respectively. He currently focuses on software development tools and technologies and major programming languages including Python, Rust, Go, Zig, and Wasm. Tune into his weekly Dev with Serdar videos for programming tips and techniques and close looks at programming libraries and tools.

More from this author