Skip to main content

jupyterlab-workshop

Guided, interactive workshops inside JupyterLab.

Workshop instructions are shown in a JupyterLab side panel and contain clickable actions that drive the live session: terminals, the file browser, the editor, notebooks, kernels and layout. Workshops can check what the learner has done, ask questions, collect values, hold pages until requirements are met, and snapshot the working directory. The concept comes from the Educates Training Platform, re-imagined so that a single workshop runs wherever JupyterLab runs, without Kubernetes or containers.

A workshop is a directory with a workshop.yaml manifest and Markdown pages. The format is text based and git friendly, and a workshop can also be published as a static JupyterLite site that runs entirely in the browser.

Warning: This project is in an early phase of development. The documentation is still being improved, the experience is still being polished, and the workshop format, settings and command line can change between releases without a compatibility path.

Install

pip install jupyterlab-workshop

The package is a prebuilt JupyterLab 4 extension with its server extension; nothing else needs installing. Open the Workshop panel from the right sidebar, or right-click a workshop directory in the file browser and choose "Open as Workshop".

Writing a workshop

pip install "jupyterlab-workshop[test]"
playwright install chromium
jupyter workshop init my-workshop
jupyter workshop lint my-workshop
jupyter workshop test my-workshop

lint needs Node.js on the path; test runs every action of the workshop in a real JupyterLab and reports each one. Inside JupyterLab, "Workshop: Author Mode" adds an editing toolbar to the panel, and jupyter workshop mcp (with the mcp extra) serves the same tools to AI agents. The lite extra adds jupyter workshop lite for building a JupyterLite site.

Learn more

  • Documentation: the actions a page can use, checks, forms and checkpoints, platforms, JupyterLite, the manifest reference, trust, the command line and authoring in JupyterLab.

  • Try the demo: the example workshop running in JupyterLite.

  • Launch on Binder: the git-basics example in a full JupyterLab with a real terminal.

  • Source, issues and contributing: see CONTRIBUTING.md in the repository for the development setup.

License

Apache License 2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyterlab_workshop-0.1.0.tar.gz (647.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyterlab_workshop-0.1.0-py3-none-any.whl (377.2 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_workshop-0.1.0.tar.gz.

File metadata

  • Download URL: jupyterlab_workshop-0.1.0.tar.gz
  • Upload date:
  • Size: 647.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for jupyterlab_workshop-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fac876195af25cc3ad674a865c2843c8004ce15de1a743c2fa1917e7163a5b7b
MD5 5ccdd43804d41ae111403fbede5e9937
BLAKE2b-256 ebabf7c273a1481b12ac5afc3ade0b7961ae645ec5605bbc66454f714ea1424f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyterlab_workshop-0.1.0.tar.gz:

Publisher: release.yml on GrahamDumpleton/jupyterlab-workshop

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jupyterlab_workshop-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_workshop-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 19f0c28da6c8b5668b863a8bfa3b1ff805bcc3aa41cdcefec6bbb037de9deaba
MD5 1102ceeadde65570d853647960b4f749
BLAKE2b-256 de22bb119138b84cf561957588c7fa90c5c864324600755e0a69aff879aa1a2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyterlab_workshop-0.1.0-py3-none-any.whl:

Publisher: release.yml on GrahamDumpleton/jupyterlab-workshop

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.15

2 files

0.1.14

2 files

0.1.13

2 files

0.1.12

2 files

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page