p5-notebook
A Jupyter Notebook environment for p5.js kernels running in the browser, powered by JupyterLite ๐ก
p5-notebook 
A minimal Jupyter Notebook UI for p5.js kernels.
p5-screencast-1.webm
Usage
โจ Try it in your browser! โจ
Features ๐
Opens with Jupyter Notebook by default ๐
By default, the p5 notebook opens with the simpler notebook interface.
p5-screencast-1.webm
JupyterLab interface ๐งช
The JupyterLab interface is still accessible via the View > Open in JupyterLab menu entry:
p5-screencast-2.webm
Live preview of HTML-based sketches โก
With the JupyterLab interface, .html files can be edited and rendered live with the built-in HTML viewer:
p5-screencast-3.webm
Support for themes ๐
The p5 notebook includes the default JupyterLab Light and Dark themes, as well as p5.js branded light and dark themes:
p5-screencast-4.webm
Support for additional display languages ๐
Just like with JupyterLab, the p5 notebook also supports additional display languages like French and Simplified Chinese:
p5-screencast-5.webm
JupyterLab and Notebook features ๐จ
Most of the JupyterLab and Jupyter Notebook features are also available, such as switching to the Simple Interface and opening the command palette:
p5-screencast-6.webm
Real Time Collaboration
Coming soon!
Dev install
This repo includes a couple of additional plugins to tweak the Jupyter UI. To setup a local environment and be able to iterate on them, make sure Node.js is installed, then:
# install dependencies pixi install # Install package in development mode pixi run develop # Rebuild the extension Typescript source after making changes pixi run build
Related projects
-
nb5.js, a notebook for p5js sketches (proof of concept): https://github.com/aparrish/nb5js-proof-of-concept
-
p5.js Jupyter Widget: https://github.com/jtpio/ipyp5
-
[archived / demo] p5.js in the Classic Jupyter Notebook with Jupyter Widgets: https://github.com/jtpio/p5-jupyter-notebook
-
Jupyter Kernels, right inside JupyterLab: https://github.com/deathbeds/jyve
-
JupyterLite has:
- Python kernel backed by Pyodide running in a Web Worker
- Initial support for interactive visualization libraries such as altair, bqplot, ipywidgets, matplotlib, and plotly
- JavaScript and P5.js kernels running in an IFrame
- Python kernel backed by Pyodide running in a Web Worker
more like this
handpose-facemesh-demos
๐ฅ๐ค 8 minimalistic templates for tfjs mediapipe handpose and facemesh