Interactive Data Science in the browser with JupyterLite and Emscripten Forge
2022-09-01 , HS 118

JupyterLite is a Jupyter distribution that runs entirely in the web browser, backed by in-browser language kernels including WebAssembly powered Jupyter Xeus kernels and Pyodide.

JupyterLite enables data science and interactive computing with the PyData scientific stack, directly in the browser, without installing anything or running a server.

JupyterLite leverages the Emscripten and Conda Forge infrastructure, making it possible to easily install custom packages with binary extensions in the browser, such as numpy, scipy and scikit-learn.


This will be a functional talk to present JupyterLite with concrete examples and live demos in the web browser.

The structure of the presentation is as follows:

  • Introduction
  • Easy interactive computing in the browser
  • A lightweight Jupyter Frontend running in the browser
  • Boots in seconds
  • Deployment and scalability made easy
  • Demos of the Features:
  • the WebAssembly powered Python kernel
  • Support for existing JupyterLab Extensions, IPython, Jupyter Widgets, interactive visualizations
  • Support for Real Time Collaboration
  • Working with files and notebooks
  • A quick overview of the underlying architecture
  • Plugin-based as a Lumino application
  • Extensible by design: most JupyterLab extensions are compatible by default and new kernels can easily be added
  • Emscripten Forge
  • Presentation of the distribution that enables the emscripten platform for the mamba (conda) package manager
  • Allows freezing in time a given WebAssembly environment. This will enable a new level of computational reproducibility.
  • Based on the WebAssembly standard supported by all web browsers
  • Demo of using a custom set of Python packages in a JupyterLite deployment
  • A wide range of use cases
  • Embed a live Python console on your website 🚀
  • Powering the numpy and sympy documentation to let anyone try the libraries in the browser without installing anything
  • Education: easy access to computing environment without the trouble of installing anything
  • Reducing the load on public services like mybinder.org
  • What's coming up next

Public link to supporting material

https://jupyterlite.readthedocs.io/en/latest/

Abstract as a tweet

Interactive Data Science in the browser powered by JupyterLite and Emscripten Forge

Project Homepage / Git

https://github.com/jupyterlite/jupyterlite/

Domains

General-purpose Python, Jupyter, Open Source Library

Expected audience expertise: Domain

none

Expected audience expertise: Python

none

Jeremy Tuloup is a Technical Director at QuantStack and a Jupyter Distinguished Contributor. Maintainer and contributor of JupyterLab, JupyterLite, Jupyter Notebook, Voilà Dashboards, and many projects within the Jupyter ecosystem.

Martin Renou is a Technical Director at QuantStack. Prior to joining QuantStack, Martin also worked as a Software Developer at Enthought. He studied at the French Aerospace Engineering School ISAE-Supaero, with a major in autonomous systems and programming.

As an open-source developer, Martin has worked on a variety of projects, such as ipygany (a 3-D mesh visualization library for the Jupyter Notebook) and ipympl (an interactive Matplotlib backend for Jupyter)

Passionate about 3-D rendering and computer graphics, Martin has also developed a 3-D Chess GUI based on OpenGL, and ipycanvas, an interactive canvas library for Jupyter.