File: README.md
JupyterLite Demo
JupyterLite deployed as a static site to GitHub Pages, for demo purposes.
โจ Try it in your browser โจ
โก๏ธ https://jupyterlite.github.io/demo
Requirements
JupyterLite is being tested against modern web browsers:
- Firefox 90+
- Chromium 89+
Deploy your JupyterLite website on GitHub Pages
Check out the guide on the JupyterLite documentation: https://jupyterlite.readthedocs.io/en/latest/quickstart/deploy.html
Further Information and Updates
For more info, keep an eye on the JupyterLite documentation:
- How-to Guides: https://jupyterlite.readthedocs.io/en/latest/howto/index.html
- Reference: https://jupyterlite.readthedocs.io/en/latest/reference/index.html
This template provides the Pyodide kernel (jupyterlite-pyodide-kernel), the JavaScript kernel (jupyterlite-javascript-kernel), and the p5 kernel (jupyterlite-p5-kernel), along with other
optional utilities and extensions to make the JupyterLite experience more enjoyable. See therequirements.txt file for a list of all the dependencies provided.
For a template based on the Xeus kernel, see the jupyterlite/xeus-python-demo repository
File: requirements.txt
Core modules (mandatory)
jupyterlite-core==0.8.0
jupyterlab~=4.6.0
notebook~=7.6.0
Python kernel (optional)
jupyterlite-pyodide-kernel==0.8.0
JavaScript kernel (optional)
jupyterlite-javascript-kernel==0.3.0
Language support (optional)
jupyterlab-language-pack-fr-FR
jupyterlab-language-pack-zh-CN
P5 kernel (optional)
jupyterlite-p5-kernel==0.3.0
JupyterLab: Fasta file renderer (optional)
jupyterlab-fasta>=3.3.0,<4
JupyterLab: Geojson file renderer (optional)
jupyterlab-geojson>=3.4.0,<4
JupyterLab: guided tour (optional)
TODO: re-enable after https://github.com/jupyterlab-contrib/jupyterlab-tour/issues/82
jupyterlab-tour
JupyterLab: dark theme
jupyterlab-night
JupyterLab: Miami nights theme (optional)
jupyterlab_miami_nights
Python: ipywidget library for Jupyter notebooks (optional)
ipywidgets>=8.1.3,<9
Python: ipyevents library for Jupyter notebooks (optional)
ipyevents>=2.0.1
Python: interative Matplotlib library for Jupyter notebooks (optional)
ipympl>=0.8.2
Python: ipycanvas library for Jupyter notebooks (optional)
ipycanvas>=0.9.1
Python: ipyleaflet library for Jupyter notebooks (optional)
ipyleaflet
Python: plotting libraries (optional)
plotly>=6,<7
bqplot
File: content/data/bar.vl.json
{
"data": {
"values": [
{
"a": "A",
"b": 28
},
{
"a": "B",
"b": 55
},
{
"a": "C",
"b": 43
},
{
"a": "D",
"b": 91
},
{
"a": "E",
"b": 81
},
{
"a": "F",
"b": 53
},
{
"a": "G",
"b": 19
},
{
"a": "H",
"b": 87
},
{
"a": "I",
"b": 52
}
]
},
"description": "A simple bar chart with embedded data.",
"encoding": {
"x": {
"field": "a",
"type": "ordinal"
},
"y": {
"field": "b",
"type": "quantitative"
}
},
"mark": "bar"
}
File: repl/jupyter-lite.json
{
"jupyter-lite-schema-version": 0,
"jupyter-config-data": {
"disabledExtensions": [
"@jupyterlab/drawio-extension",
"jupyterlab-kernel-spy",
"jupyterlab-tour"
]
}
}
File: .github/workflows/deploy.yml
name: Build and Deploy
on:
push:
branches:
- main
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install the dependencies
run: |
python -m pip install -r requirements.txt
- name: Build the JupyterLite site
run: |
cp README.md content
jupyter lite build --contents content --output-dir dist
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./dist
deploy:
needs: build
if: github.ref == 'refs/heads/main'
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4