This project integrates JupyterLite with the Pyodide kernel and custom extensions such as `jl-galaxy`.
npm install @galaxyproject/jupyterliteThis project integrates JupyterLite with the Pyodide kernel and custom extensions such as jl-galaxy.
The jl-galaxy extension enables Jupyter users to interact seamlessly with their Galaxy history — including loading and saving notebooks — through a fully integrated browser-based interface.
- Python 3.10.17+
- Node.js 20.19.1+
- npm 10.8.2+
---
``bash`
python -m venv .venv
source .venv/bin/activate
`bash`
pip install -r requirements.txt
This installs jupyterlite, jupyterlite-pyodide-kernel, and the gxy utility module for Galaxy integration.
`bash`
npm install
This installs JavaScript dependencies listed in package.json, including custom JupyterLite extensions.
---
Run the full build to generate a standalone JupyterLite distribution:
`bash`
npm run build
This will:
- Run jupyter lite buildjl-galaxy
- Include the Pyodide kernel
- Bundle federated extensions like ./static/dist/_output
- Output the final static site to:
---
To serve the JupyterLite site locally:
`bash`
npm run serve
Then open http://localhost:3000 in your browser.
---
)The gxy module provides Python functions to interact with the Galaxy API directly from JupyterLite.
`python`
await api("/api/histories")
await api("/api/histories", method="POST", data={"name": "New History"})
---
`python`
await get(3) # by HID
await get("some_id", "id")
await get("myfile.*", "regex")
await get("mytag", "tag")
---
`python`
await put("mydata.txt", "newname.txt", ext="txt")
---
`python`
await get_history()
---
`python`
await get_history_id()
---
.`python
get_environment()
`---
$3
Used internally to resolve regex patterns to dataset identifiers.---
📎 Notes
- The
jl-galaxy extension allows users to browse and manage Galaxy histories directly from the Jupyter UI.
- All files must be placed within static/dist/_output; writing outside this directory breaks the build.
- The upload helper uses XMLHttpRequest to work around Pyodide's limitations with fetch`.