Notebooks & data apps · marimo Inc.

marimo

Open-source reactive Python notebook stored as plain .py files, designed to fix reproducibility problems in Jupyter.

marimo is a Python notebook that stores itself as a plain, git-friendly .py file rather than JSON, and treats the notebook as a reproducible dataflow graph: when a cell changes, every dependent cell automatically re-runs (and marimo detects and blocks stale or out-of-order execution, a common source of hidden bugs in traditional notebooks). The same file can run as a script from the command line, be deployed as an interactive web app with a single command, or be tested with standard Python tooling. marimo is free and fully open source and runs self-hosted; it also offers molab, a free WebAssembly-based cloud notebook for sharing runnable notebooks via a link with no server required, and a free Community Cloud for publishing. As of this writing, no paid cloud tier has been announced.

At a glance

Vendor marimo Inc.
Pricing model Open source + paid options
Free tier Yes
Deployment Cloud, Self-hosted
Open source Yes (Apache-2.0)
Best for Python users who want reproducible, git-friendly notebooks without Jupyter's hidden-state pitfalls.

Pricing

Free and open source; molab and Community Cloud provide free hosted/shareable notebooks, with no paid tier announced.

Pricing has not been verified yet — see the vendor's site.

Features

  • Notebook stored as plain, git-diffable .py files
  • Reactive execution graph that reruns dependent cells automatically
  • Detects and prevents stale/hidden-state execution bugs
  • Run the same file as a script, notebook, or deployed app
  • Built-in UI elements (sliders, dropdowns) bound to reactive state
  • molab: free WebAssembly cloud notebooks, no server required
  • Native pytest compatibility for testing notebook code

Integrations

Profile last reviewed September 21, 2026

Head to head

Alternatives

marimo in the index now

Terms to know

Related guides