Data and databases · Edition No. 6 · 31 Aug 2026

marimo-team/marimo

Reactive Python notebook stored as a plain .py file — no hidden execution order, and `marimo run` serves it as a web app.

← Data and databasesRead the whole edition →

22.7k stars · Apache-2.0 · 0.24.0 (2026-08-17)

Reactive Python notebook stored as a plain .py file — no hidden execution order, and `marimo run` serves it as a web app.

Repo detailsthe review · specs · pros & cons · install

What it is

A reactive Python notebook. The file on disk is ordinary .py; change a cell and every cell that depends on it re-runs automatically, so there is no hidden state and no out-of-order execution. It has built-in interface elements — sliders, dropdowns, tables — and the same file can be served as a web app or run as a script.

Why it matters

Count how many entries in this ledger end with "the result is a pandas DataFrame": advertools' crawl tables, tsfresh's features, arch's volatility series, skforecast's fold metrics, quantstats' inputs. You have nowhere good to look at any of them. Jupyter is the usual answer and it is the wrong one for you specifically, on two counts: its hidden execution order quietly produces wrong results, which matters most when the result is a trading decision; and .ipynb files are unreadable in git and awkward for Claude Code to edit. A marimo notebook is a Python file — Claude Code edits it like any other source file — and reactivity means a slider over "window length" or "volatility threshold" re-runs the whole analysis as you drag it. That is the difference between reading a backtest result and interrogating one. And since the same file serves as an app, an internal ScalpingMate research tool costs you nothing extra to build.

Stars22.7k
LicenceApache-2.0
Latest0.24.0 (2026-08-17)checked 7 Sep 2026
Written inPython
RunsSelf-hosted on your own server
Setup effort
1 / 5
Payoff
4 / 5
Good
  • Notebooks are plain .py files: git-diffable, reviewable, and directly editable by Claude Code
  • Reactive execution eliminates the "I ran the cells out of order" class of wrong answer, which is the one that costs money here
  • marimo run serves the same file as a web app, so a research notebook becomes an internal tool for free
Watch for
  • It is not Jupyter and will not run your existing .ipynb files unchanged. There is an importer; expect friction
  • Reactivity means an expensive cell re-runs whenever anything upstream changes, so long jobs need caching or explicit stops
  • A much smaller ecosystem than Jupyter — most tutorials you find in the wild will be written for the other one
Install
source venv/bin/activate
pip install marimo
marimo edit analysis.py

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.