June 12, 2021

362 words 2 mins read

jtpio/jupyterlite

jtpio/jupyterlite

Wasm powered Jupyter running in the browser

repo name jtpio/jupyterlite
repo link https://github.com/jtpio/jupyterlite
homepage https://jupyterlite.rtfd.io/en/latest/try/lab
language TypeScript
size (curr.) 1711 kB
stars (curr.) 1246
created 2021-03-27
license BSD 3-Clause “New” or “Revised” License

JupyterLite

ci-badge binder-badge docs-badge

JupyterLite is a JupyterLab distribution that runs entirely in the browser built from the ground-up using JupyterLab components and extensions.

✨ Try it in your browser ✨

JupyterLite works with both JupyterLab and RetroLab.

Try it with JupyterLab! Try it with RetroLab!
lab-screenshot retro-screenshot

Features

For more details, see the JupyterLite documentation.

Browser-based Interactive Computing

  • Python kernel backed by Pyodide running in a Web Worker
  • JavaScript kernel running in an IFrame
  • Combine Offline Notebook storage in browser localStorage or IndexDB with example files
  • Support for saving settings for JupyterLab/Lite core and federated extensions
  • Basic session and kernel management to have multiple kernels running at the same time
  • Support for Code Consoles
  • Initial support for visualization libraries such as matplotlib and altair

Ease of Deployment

  • Served via well-cacheable, static HTTP(S), works on most static web hosts, and locally
  • Embeddable within larger applications
  • Requires no dedicated application server much less a container orchestrator
  • Fine-grained configurability of page settings, including reuse of federated extensions

Status

⚠️ Currently in active development ⚠️

Development install

See the contributing guide for a development installation.

JupyterLite is a reboot of several attempts at making a full static Jupyter distribution that runs in the browser, without having to start the Python Jupyter Server on the host machine.

The goal is to provide a lightweight computing environment accessible in a matter of seconds with a single click, in a web browser and without having to install anything.

This project is a collection of packages that can be remixed together in variety of ways to create new applications and distributions. Most of the packages in this repo focus on providing server-like components that run in the browser (to manage kernels, files and settings), so existing JupyterLab extensions and plugins can be reused out of the box.

See also:

  • p5-notebook: A minimal Jupyter Notebook UI for p5.js kernels running in the browser
  • jyve: Jupyter Kernels, right inside JupyterLab
  • Starboard Notebook: In-browser literal notebooks
  • Basthon: A Jupyter notebook implementation using Pyodide
comments powered by Disqus