
marimo
Open-source responsive notebook: changing code in one cell automatically recalculates relevant cells. Files are saved as pure Python, enabling version control. It can also be run as a script or deployed as a web application, making it ideal for data analysis and teaching demonstrations.
Updated: 2026-10-27
What is marimo?
marimo is an open-source reactive notebook maintained by Marimo, positioned as the next-generation Python working environment to replace traditional notebooks. Its biggest difference from Jupyter lies in state management: when you modify a cell, the downstream cells dependent on it will automatically recalculate, eliminating hidden execution order issues. The notebook itself is saved as a pure Python file, which can be added to version control, run as a script, or published as a web application. The official states that its GitHub repository has received 23,300 stars.
Who is it for?
- Data scientists and analysis engineers: Need to explore data while retaining reproducible results.
- Machine learning engineers: The training and parameter tuning processes should be version-controllable and directly reproducible by colleagues.
- Educators and course authors: Include explanations, code, and interactive controls in the same material.
- For those who want to turn their analysis into internal tools: No need to start a separate front-end project; you can directly publish the notebook as a web application.
Key features
6Reactive Execution
Running any cell automatically updates the affected downstream cells; for time-consuming notebooks, you can set them to be marked as expired instead of automatically re-running.
Interactive Components
Built-in elements such as sliders, dropdown menus, data tables, and optional charts, eliminating the need to rewrite code when adjusting parameters.
Pure Python Storage
A notebook is simply a.py file, manageable with Git, reusable as a module, testable with pytest, and supports dependency management via uv and PEP 723 metadata.
Reproducibility
Cells execute in a fixed order with no hidden state; deleting a cell removes its variables, and dependencies can be serialized into files with a tool-managed virtual environment.
SQL Support
Built-in SQL cells enable querying backends such as Polars, Pandas, PyArrow, DuckDB, SQLite, Postgres, and MySQL.
Publishing & Running
Can be exported as WebAssembly-powered HTML for sharing on the web, or served as a web app via the command line; it can also be run as a script locally and in pipelines.
How to use marimo
- 1After installation, first go through the official getting started tutorial to experience the difference of automatic recalculation of dependencies, and then migrate old notebooks.
- 2The project is open source, available for free local use, and can also be tried directly online; the prices of hosting and team plans are subject to the official website.
- 3When migrating Jupyter notebooks, verify them section by section. Be aware of implicit execution order dependencies in old files; otherwise, the results will change.
- 4Before publishing as a public application, check if the notebook contains embedded secrets, intranet addresses, or undecensored data.
Traffic & popularity
Data month Sep 2026
marimo receives about 479.5K visits per month and ranks #87,868 worldwide.
Monthly visits
12 monthsTraffic sources
- Direct44.4%
- Search33.3%
- Referrals13.2%
- Social4.9%
- AI assistants2.8%
- Other1.4%
Top countries
- United States30.5%
- India18.6%
- Pakistan6.1%
- Germany5.2%
- Canada5.0%
Estimated from third-party traffic data.
Similar tools
CodeGPTCodeGPT is an AI programming agent embedded in mainstream development environments. It supports integrating multiple models with its own API Key. It first reads the code, provides modifiable solutions, and then takes action, making it suitable for teams that value data controllability.
Vibecode AppVibecode is an AI application generator for non-developers. Just describe your idea in one sentence, and you can get a publishable mobile and web application. It comes with a large number of customizable templates and supports continued development on mobile devices, making it ideal for quickly validating product ideas.
BugsterBugster is an AI testing agent platform. You can describe the process in natural language to generate and execute end-to-end tests in a real browser. It supports merge request triggering, multi-environment running and screen recording on failure, making it suitable for R&D teams that lack personnel to maintain scripts.
PlayerZeroAn AI engineering collaboration platform for production environments, which builds an engineering world model using code, work orders and observability data, enabling agents in support, SRE, R&D and QA to collaborate on triage, locate faults and conduct pre-release simulation.
CopilotKitEmbed the agent into the front-end framework of the product interface, providing dialogue components, generative interfaces and in-app operations, which can connect to multiple agent backends, and is suitable for adding AI assistants to existing products while retaining permissions and audits.
Adaptive.aiAn AI colleague platform for small teams, it handles sales follow-up, marketing and research, and can also build websites and small tools. Officially, it says it can connect to common tools such as Gmail and Stripe.