All Projects → jtpio → P5 Notebook

jtpio / P5 Notebook

Licence: bsd-3-clause
A minimal Jupyter Notebook UI for p5.js kernels running in the browser

Programming Languages

typescript
32286 projects
processing
702 projects
p5js
31 projects

Projects that are alternatives of or similar to P5 Notebook

Jupyterlab Lsp
Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol
Stars: ✭ 796 (+2961.54%)
Mutual labels:  jupyter, notebook
Quantitative Notebooks
Educational notebooks on quantitative finance, algorithmic trading, financial modelling and investment strategy
Stars: ✭ 356 (+1269.23%)
Mutual labels:  jupyter, notebook
importnb
notebook files as source
Stars: ✭ 47 (+80.77%)
Mutual labels:  jupyter, notebook
clustergrammer2-notebooks
Examples using Clustergrammer2 to explore high-dimensional datasets.
Stars: ✭ 35 (+34.62%)
Mutual labels:  jupyter, notebook
Sklearn Classification
Data Science Notebook on a Classification Task, using sklearn and Tensorflow.
Stars: ✭ 518 (+1892.31%)
Mutual labels:  jupyter, notebook
jupyter-bbox-widget
A Jupyter widget for annotating images with bounding boxes
Stars: ✭ 19 (-26.92%)
Mutual labels:  jupyter, notebook
Hide code
Code, prompt and output hiding for Jupyter/IPython notebooks.
Stars: ✭ 339 (+1203.85%)
Mutual labels:  jupyter, notebook
dmind
jupyter notebook 的思维导图插件
Stars: ✭ 21 (-19.23%)
Mutual labels:  jupyter, notebook
Jupyter C Kernel
Minimal Jupyter C kernel
Stars: ✭ 463 (+1680.77%)
Mutual labels:  jupyter, notebook
Papermill
📚 Parameterize, execute, and analyze notebooks
Stars: ✭ 4,458 (+17046.15%)
Mutual labels:  jupyter, notebook
sage-binder-env
A SageMath-based computing environment for binder
Stars: ✭ 17 (-34.62%)
Mutual labels:  jupyter, notebook
Digital Signal Processing Lecture
Digital Signal Processing - Theory and Computational Examples
Stars: ✭ 532 (+1946.15%)
Mutual labels:  jupyter, notebook
docker-stacks
Ready-to-run Docker images containing Jupyter applications
Stars: ✭ 6,573 (+25180.77%)
Mutual labels:  jupyter, notebook
epic-kitchens-55-starter-kit-action-recognition
🌱 Starter kit for working with the EPIC-KITCHENS-55 dataset for action recognition or anticipation
Stars: ✭ 40 (+53.85%)
Mutual labels:  jupyter, notebook
MGT-python
Musical Gestures Toolbox for Python
Stars: ✭ 25 (-3.85%)
Mutual labels:  jupyter, notebook
Polyaxon
Machine Learning Platform for Kubernetes (MLOps tools for experimentation and automation)
Stars: ✭ 2,966 (+11307.69%)
Mutual labels:  jupyter, notebook
colab-badge-action
GitHub Action that generates "Open In Colab" Badges for you
Stars: ✭ 15 (-42.31%)
Mutual labels:  jupyter, notebook
pytest-notebook
A pytest plugin for regression testing and regenerating Jupyter Notebooks
Stars: ✭ 35 (+34.62%)
Mutual labels:  jupyter, notebook
Hands On Nltk Tutorial
The hands-on NLTK tutorial for NLP in Python
Stars: ✭ 419 (+1511.54%)
Mutual labels:  jupyter, notebook
Data Science Your Way
Ways of doing Data Science Engineering and Machine Learning in R and Python
Stars: ✭ 530 (+1938.46%)
Mutual labels:  jupyter, notebook

p5-icon p5-notebook p5-icon

Github Actions Status

A minimal Jupyter Notebook UI for p5.js kernels.

Try it in your browser!

screenshot

Status

This is still an experiment 🧪.

Feel free to open an issue if you have any feedback, and PRs are also welcome! Thanks!

Dev install

Make sure Node.js is installed.

yarn
yarn run build
npx http-server

Open http://localhost:8080 in your browser.

There is also a watch command to automatically rebuild the application when there are new changes:

yarn run watch

How it works

This notebook interface is built using components from the JupyterLab computational environment.

JupyterLab is the next-gen UI for Project Jupyter, and is itself built as a set of extensions. These extensions are modular and can be reused in alternative frontends such as this notebook interface.

Jupyter front-ends usually rely on a server known as the Jupyter Server (also called the Notebook Server). This server is written in Python and handles request coming from the client, such as starting a new kernel or retrieving the content of a Jupyter notebook. The kernels usually run on the host machine, but it is also possible to have kernels running on a remote machine.

Because the p5 notebook runs entirely in the browser, it relies on a very minimal Jupyter Server that also runs in the browser and exposes (parts of) the notebook server REST API. This makes it easier to reuse components from core JupyterLab and swap the backend to an alternative one running in the browser.

p5.js kernels also run in the browser in their own IFrame. The IFrame provides the execution engine for the kernel and this is where its state is kept.

Related projects

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].