Skip to main content

Live reveal.js slideshow for MyST Markdown notebooks in JupyterLab.

Project description

jupyterlab-myst-revealjs

Github Actions Status

Live reveal.js slideshow for MyST Markdown notebooks in JupyterLab.

Screenshot

Open any notebook as a slideshow panel beside the notebook editor. Markdown cells are rendered via jupyterlab-myst, code cells use JupyterLab's native CodeCell widget — execute code and see results on slides in real time.

Features

  • reveal.js slideshow — present notebooks as reveal.js slides directly in JupyterLab
  • Slide structureslide, subslide, fragment, skip via cell metadata
  • MyST Markdown — admonitions, math, cross-references, and all MyST directives
  • Live code execution — Shift+Enter runs code cells on slides (shared kernel with notebook)
  • Cell tags
    • Jupyter Book compatible — hide-input, hide-output, hide-cell, remove-input, remove-output, remove-cell
    • Grid layout — gridwidth-* tags for multi-column layouts
  • Customization
    • Slide backgrounds — per-slide background color/image via cell metadata
    • Themes — 6 bundled reveal.js themes (black, white, dracula, serif, and more)
    • Custom CSS — drop a myst-revealjs.css next to your notebook for custom styling
    • Header / Footer — CSS-based overlays customizable via myst-revealjs.css
  • Keyboard controls
    • Code visibility toggle — i / o keys to toggle input/output on focused code cells during the slideshow
    • Fullscreen / Overview — f for fullscreen, o for slide overview

Requirements

Install

pip install jupyterlab-myst-revealjs

No Node.js required — this is a prebuilt extension.

Uninstall

pip uninstall jupyterlab-myst-revealjs

Quick Start

  1. Open a notebook in JupyterLab.
  2. Click the slideshow button in the toolbar, or run slideshow:open from the Command Palette.
  3. Set slide types via the Property Inspector (right sidebar).
  4. Press Shift+Enter on code cells to execute them on slides.

Configuration

Add a myst-revealjs key to your notebook metadata to configure reveal.js options:

{
  "myst-revealjs": {
    "theme": "white",
    "transition": "fade",
    "slideNumber": true
  }
}

See the documentation for full configuration options, cell metadata reference, and migration guide from RISE.

Development

Building

uv venv && uv pip install -e ".[dev]"
jlpm install && jlpm build
jupyter labextension develop . --overwrite

Run jlpm watch in one terminal and jupyter lab in another for live development.

Testing

jlpm test                    # Unit tests (Jest)
cd ui-tests && jlpm test     # E2E tests (Playwright + Galata)

See CONTRIBUTING for details.

License

MIT

Project details


Download files

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

Source Distribution

jupyterlab_myst_revealjs-1.4.2.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

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

jupyterlab_myst_revealjs-1.4.2-py3-none-any.whl (4.5 MB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_myst_revealjs-1.4.2.tar.gz.

File metadata

  • Download URL: jupyterlab_myst_revealjs-1.4.2.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jupyterlab_myst_revealjs-1.4.2.tar.gz
Algorithm Hash digest
SHA256 be8de99565b5186a063adbc4a4eacb8578dd174ba4f3ed86566af99a9c46a437
MD5 328ed2afd3b6f4cba3c2386bc9a71645
BLAKE2b-256 20b3c1dcf4109978c1eec54ddd7f4d50e5fddb3d1028b7544e8039dfc0a95b7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyterlab_myst_revealjs-1.4.2.tar.gz:

Publisher: publish.yml on CojiroSasaki/jupyterlab-myst-revealjs

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_myst_revealjs-1.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_myst_revealjs-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 452e04aa144e0cebba5d5debf1abee88e357e78d4b76ac477567e09b0e808499
MD5 39aa599e1d996f0cbf760597f935965d
BLAKE2b-256 d11d88697e6c660463785c61ada06822d444f64dc56bbe1b4bb6f6febbb5de8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyterlab_myst_revealjs-1.4.2-py3-none-any.whl:

Publisher: publish.yml on CojiroSasaki/jupyterlab-myst-revealjs

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page