The future of Python notebooks
marimo is an open-source reactive notebook for Python β reproducible, git-friendly, executable as a script, and shareable as an app.
$ $
Used by developers at
Fit for the modern Pythonista
Outputs update automatically
Run one cell and marimo reacts by automatically running affected cells, eliminating the error-prone chore of managing notebook state. Working with expensive notebooks? Just configure marimo to mark outputs as stale instead of autorunning.
marimo's reactive UI elements, like dataframe GUIs and plots, make working with data feel refreshingly fast, futuristic, and intuitive.
Rapidly experiment with code and models
Bind UI elements to Python values
Pick-up-and-play design, with depth for power users
Python-first design
marimo notebooks are pure Python and stored as .py files
Version with git, run as Python scripts, import symbols from a notebook into other notebooks or Python files, and lint or format with your favorite tools.
Reproducible execution
Notebooks are executed in a deterministic order, with no hidden state β delete a cell and marimo deletes its variables while updating affected cells.
marimo can optionally serialize package requirements in notebook files and instantiate ephemeral virtual environments for them.
Built for collaboration
Collaborate on notebooks with git: small changes yield small diffs. Goodbye JSON, hello Python!
Share results by exporting as HTML or serving your notebook as a web app with the marimo CLI.
Made for developers
We care a lot about developer experience.
The marimo editor comes with GitHub Copilot, autocomplete, hover tooltips, vim keybindings, code formatting, debugging panels, and extensive hotkeys. marimo also ships with a CLI, a library, and a VS Code extension. Learn more at our docs.
Go from prototype to production
marimo makes it seamless to go from prototype to production.
Run as Python scripts, locally or in pipelines
Deploy as read-only web apps
Loved by developers
Marimo is amazing. I'm using it daily instead of Jupyter. Rather than writing throwaway notebooks, I have a big library of reusable Marimo mini apps.
Anthony Goldbloom
π Saw the coolest demo of marimo tonight: an open-source developer environment that feels like a notebook -- but can be visualized as a web app, and under the hood is version-controllable (and deployable!) as a Python script.
Paige Bailey
A really interesting new twist on Python notebooks. The most powerful feature is that these notebooks are reactive: if you change the value or code in a cell every other cell that depends on that value will update automatically
Simon Willison
marimo is one of the AI tools that I'm most excited about. Such a welcome update to the python notebook experience
Nader Khalil
marimo is one of my favorite tools right now and people are sleeping on it. using our graph framework in a DAG-based reactive notebook is :chefs-kiss:β¨
Ben Guo
Been searching for this for years. Reactive python in the browser, easy to share, looks great out of the box. Go @marimo_io go!
Brendan Cooley
Reactive python notebooks running natively in the browser? https://marimo.app/l/zo3ekv Yes, please! @marimo_io
Georgios Varnavides
This is so mesmerizing - you just don't see this kind of thing in #python.
β¦ the first non-ipython notebook to be taken seriously.
Alexander Kislukhin
I am VERY impressed β¦ every time I thought "Hmm, it would be nice if they could also do this thing", a few lines down, you show how to do exactly this thing. And half of the stuff sounds like magic becoming real.
apahl
Iβve been using marimo for a project; what a piece of art! Itβs easy to get started with and tremendously valuable to showcase results of data science work. Simple, intuitive, and high impact.
Tina Diao
Marimo is becoming what I would have wanted Pluto to be. Congratulations on your work!!
Raphael Chinchilla
marimo is one of my favorite tools right now and people are sleeping on it. using our graph framework in a DAG-based reactive notebook is :chefs-kiss:β¨
Ben Guo
Been searching for this for years. Reactive python in the browser, easy to share, looks great out of the box. Go @marimo_io go!
Brendan Cooley
Reactive python notebooks running natively in the browser? https://marimo.app/l/zo3ekv Yes, please! @marimo_io
Georgios Varnavides
This is so mesmerizing - you just don't see this kind of thing in #python.
β¦ the first non-ipython notebook to be taken seriously.
Alexander Kislukhin
I am VERY impressed β¦ every time I thought "Hmm, it would be nice if they could also do this thing", a few lines down, you show how to do exactly this thing. And half of the stuff sounds like magic becoming real.
apahl
Iβve been using marimo for a project; what a piece of art! Itβs easy to get started with and tremendously valuable to showcase results of data science work. Simple, intuitive, and high impact.
Tina Diao
Marimo is becoming what I would have wanted Pluto to be. Congratulations on your work!!
Raphael Chinchilla
Made with marimo
Experiment with data and models
Run computational experiments and explore data in an interactive, reproducible programming environment.
Interactive Embedding Explorer
by marimo team
Neural Networks with Micrograd
by marimo team
Trajectory planning
by Philipp Schiele
Communicate research and education
Share research and make it tangible. Engage students with interactive educational apps.
Optimal Signal Decomposition
by the GISMo lab at SLAC
Seam Carving
by Vincent Warmerdam
Interactive Matrices
by Vincent Warmerdam
Hypothesis Testing
by Davide Eynard
Generative AI
Build generative AI apps with marimo, such as chatbots, image generators, and more.
Generative UI
by marimo team
Recipe Bot
by marimo team
Code Interpreter
by marimo team
Build internal tools
Build maintainable internal tools using just Python, without the hassle of custom frontends, infra, endpoints, and deployments.
NLP Model Comparison
by marimo team
Data Labeling Tool
by marimo team
Financial Calculator
by marimo team