marimo is a next-generation Python notebook where every notebook is also shareable as an interactive web app: explore data, run experiments, build tools, and deploy apps, all from one seamless environment.

Highlights. marimo is purpose-built for working with data in Python. Some key features:

  • reactive: run a cell, and marimo automatically runs cells that depend on it

  • interactive: connect inputs like sliders, dropdowns, tables, and more to Python

  • reproducible: no hidden state

  • simple: no callbacks, no magical syntax — just Python

  • expressive: create dynamic makdown parametrized by interactive elements, plots, or anything else

  • Pythonic: cells only run Python; notebooks stored as .py files (clean git diffs!)

  • performant: powered by static analysis, zero runtime overhead

marimo was built from the ground up to solve many well-known problems associated with traditional notebooks; marimo is not built on Jupyter or any other notebook or app library.

⚡ marimo notebooks run automatically with interactions and code changes

✨ express yourself with markdown, LaTeX, tables, accordions, tabs, grids, and more

🔬 do reproducible science in an environment that makes your data tangible

🚀 deploy your creations as interactive web apps

Contents

Index