marimo is a Python library for creating reactive notebooks that double as apps. marimo is:
reactive: run a cell and marimo automatically runs cells that depend on it
interactive: interact with sliders, tables, and more to run cells
reproducible: no hidden state
simple: no callbacks, no magical syntax
expressive: parametrize markdown with 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
