Skip to main content

Render marimo cells as hydrated islands in Jupyter Book.

Project description

jupyter-book-marimo

jupyter-book-marimo turns MyST-native {marimo} directives into hydrated marimo islands in a Jupyter Book site.

Authors write Python, SQL, or Markdown cells in normal MyST pages. During the book build, the executable plugin runs those cells and emits static HTML. In the browser, marimo hydrates the outputs so controls, tables, plots, SQL results, and dependent cells stay reactive.

Requires Python 3.10+. The package installs marimo for page execution.

Quick Start

Install the plugin in the same environment as Jupyter Book:

pip install jupyter-book-marimo

For uv-managed projects, use:

uv add jupyter-book-marimo

Register the executable plugin in myst.yml:

project:
  plugins:
    - type: executable
      path: .venv/bin/jupyter-book-marimo

Use the executable path that matches your environment. In this repo's docs site, the docs live in docs/, so the path is ../.venv/bin/jupyter-book-marimo.

Write marimo cells as MyST directives:

```{marimo} python
import marimo as mo

slider = mo.ui.slider(start=1, stop=10, label="islands")
slider
```

```{marimo} python
"🏝️" * slider.value
```

Set page defaults or page-local dependencies with {marimo-config}:

```{marimo-config}
:echo: true
:pyproject: |
  requires-python = ">=3.10"
  dependencies = ["pandas"]
```

Build the book:

jupyter-book build --html

Docs

  • Live docs index: quick proof that static pages hydrate into reactive marimo islands.
  • Installation: install the package and register the executable plugin.
  • Authoring: full {marimo} directive option list.
  • Page configuration: defaults, headers, and page-local dependencies.
  • Styling: public CSS hooks for book themes.
  • Runtime assets: bridge assets, hydration payloads, and publishing constraints.

For the full local workflow, see CONTRIBUTING.md.

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

jupyter_book_marimo-0.0.0a0.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

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

jupyter_book_marimo-0.0.0a0-py3-none-any.whl (46.7 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_book_marimo-0.0.0a0.tar.gz.

File metadata

  • Download URL: jupyter_book_marimo-0.0.0a0.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for jupyter_book_marimo-0.0.0a0.tar.gz
Algorithm Hash digest
SHA256 3de05cd1dff233ae6662d7acff25978998bf70fb8c9d7338cf606f66be299f54
MD5 c11b532a98f32a66e41361eb39ada939
BLAKE2b-256 16943460e92ced7c7d5edce8788bb52f8bb81b9f19f8161d9d34ec206982eb46

See more details on using hashes here.

File details

Details for the file jupyter_book_marimo-0.0.0a0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_book_marimo-0.0.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 3ace1035aa8860b5090f52d60972831224d11d99c175fad44b17f3c9a9fedbea
MD5 f3b47d150daa235ae68ae5b9e785e867
BLAKE2b-256 a49c93c305bd44e9ca8e4bf727bce40d3a4a1af5b459f563727f97ddf9ada52c

See more details on using hashes here.

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