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.
pip install marimo && marimo tutorial intro
marimo is a replacement for Jupyter notebooks with next-gen features.
reactive: marimo runs automatically, like a spreadsheet, based on global variables
interactive: control notebook execution with interactive elements — scrub a slider or select data in a plot, automatically get values back in Python (no callbacks!)
build apps: convert marimo notebooks to web apps, with zero lines of code or configuration
performant: marimo runs the minimal amount of code required to update your notebook
developer-friendly: pure Python git-friendly file format (
.py
), GitHub Copilot, fast autocomplete, code formatting, and more
These features accelerate data work, increase reproducibility by eliminating hidden state, transform notebooks into interactive tools, and make notebooking a delight.
marimo was built from the ground up to solve many well-known problems associated with traditional notebooks.
⚡ 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