HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
marimo-team
marimo
Python2023–2026
marimo-team / marimo

marimo

A reactive notebook for Python — run reproducible experiments, query with SQL, execute as a script, deploy as an app, and version with git. Stored as pure Python. All in a modern, AI-native editor.

14Distinct people
33Mentions
0Explicit recommenders
23.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A reactive notebook for Python — run reproducible experiments, query with SQL, execute as a script, deploy as an app, and version with git. Stored as pure Python. All in a modern, AI-native editor.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month33 dated mentions

Observed mentions: 2023-11-10 20:38:07 UTC to 2026-05-18 21:21:46 UTC.

012342023-11-01 00:00:00 UTC to 2023-12-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 commentsNov 20232023-12-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2024-02-01 00:00:00 UTC (exclusive): 4 mentions; 2 submissions, 2 comments2024-02-01 00:00:00 UTC to 2024-03-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2024-03-01 00:00:00 UTC to 2024-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-04-01 00:00:00 UTC to 2024-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-05-01 00:00:00 UTC to 2024-06-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024-06-01 00:00:00 UTC to 2024-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-07-01 00:00:00 UTC to 2024-08-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-08-01 00:00:00 UTC to 2024-09-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2024-09-01 00:00:00 UTC to 2024-10-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024-10-01 00:00:00 UTC to 2024-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-11-01 00:00:00 UTC to 2024-12-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-12-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-01-01 00:00:00 UTC to 2025-02-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2025-02-01 00:00:00 UTC to 2025-03-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsFeb 20252025-03-01 00:00:00 UTC to 2025-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-04-01 00:00:00 UTC to 2025-05-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025-05-01 00:00:00 UTC to 2025-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-06-01 00:00:00 UTC to 2025-07-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-07-01 00:00:00 UTC to 2025-08-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2025-08-01 00:00:00 UTC to 2025-09-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-09-01 00:00:00 UTC to 2025-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-01 00:00:00 UTC to 2025-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-01 00:00:00 UTC to 2025-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-01 00:00:00 UTC to 2026-02-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-01 00:00:00 UTC to 2026-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-03-01 00:00:00 UTC to 2026-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-04-01 00:00:00 UTC to 2026-05-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2026-05-01 00:00:00 UTC to 2026-06-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsMay 2026

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Nov 20232023-11-01 00:00:00 UTC2023-12-01 00:00:00 UTC202
Dec 20232023-12-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
Jan 20242024-01-01 00:00:00 UTC2024-02-01 00:00:00 UTC422
Feb 20242024-02-01 00:00:00 UTC2024-03-01 00:00:00 UTC211
Mar 20242024-03-01 00:00:00 UTC2024-04-01 00:00:00 UTC000
Apr 20242024-04-01 00:00:00 UTC2024-05-01 00:00:00 UTC000
May 20242024-05-01 00:00:00 UTC2024-06-01 00:00:00 UTC303
Jun 20242024-06-01 00:00:00 UTC2024-07-01 00:00:00 UTC000
Jul 20242024-07-01 00:00:00 UTC2024-08-01 00:00:00 UTC101
Aug 20242024-08-01 00:00:00 UTC2024-09-01 00:00:00 UTC220
Sep 20242024-09-01 00:00:00 UTC2024-10-01 00:00:00 UTC303
Oct 20242024-10-01 00:00:00 UTC2024-11-01 00:00:00 UTC000
Nov 20242024-11-01 00:00:00 UTC2024-12-01 00:00:00 UTC101
Dec 20242024-12-01 00:00:00 UTC2025-01-01 00:00:00 UTC101
Jan 20252025-01-01 00:00:00 UTC2025-02-01 00:00:00 UTC211
Feb 20252025-02-01 00:00:00 UTC2025-03-01 00:00:00 UTC101
Mar 20252025-03-01 00:00:00 UTC2025-04-01 00:00:00 UTC000
Apr 20252025-04-01 00:00:00 UTC2025-05-01 00:00:00 UTC202
May 20252025-05-01 00:00:00 UTC2025-06-01 00:00:00 UTC000
Jun 20252025-06-01 00:00:00 UTC2025-07-01 00:00:00 UTC110
Jul 20252025-07-01 00:00:00 UTC2025-08-01 00:00:00 UTC211
Aug 20252025-08-01 00:00:00 UTC2025-09-01 00:00:00 UTC101
Sep 20252025-09-01 00:00:00 UTC2025-10-01 00:00:00 UTC000
Oct 20252025-10-01 00:00:00 UTC2025-11-01 00:00:00 UTC000
Nov 20252025-11-01 00:00:00 UTC2025-12-01 00:00:00 UTC000
Dec 20252025-12-01 00:00:00 UTC2026-01-01 00:00:00 UTC000
Jan 20262026-01-01 00:00:00 UTC2026-02-01 00:00:00 UTC000
Feb 20262026-02-01 00:00:00 UTC2026-03-01 00:00:00 UTC000
Mar 20262026-03-01 00:00:00 UTC2026-04-01 00:00:00 UTC000
Apr 20262026-04-01 00:00:00 UTC2026-05-01 00:00:00 UTC312
May 20262026-05-01 00:00:00 UTC2026-06-01 00:00:00 UTC110

What Hacker News says

33 sources
malachyd·May 18, 2026Submission

Show HN: Tracecast – open-source generative data apps built on top of Marimo

Hi HN, I'm Malachy, the founder of Tracecast. This project lets you generate interactive data apps on top of your data, using a Cursor-style AI chat. It stitches together Marimo, LangGraph agents, and data warehouse query tools. It has an Apache 2.0 license. The initial use case that spurred this project was business analytics, specifically generating product usage dashboards. This project's main inspiration is Marimo, an open source python notebook that can be "queried with SQL, run as a script, and deployed as an app" [1]. The recent release of Marimo Pair [2] demonstrated the power of connecting AI agents like Claude Code to Marimo notebooks directly. This project seeks to build on that work by incorporating a LangGraph agent with two key abilities: (1) the ability to execute queries against a connected data warehouse (such as Snowflak
Read the rest
e); (2) the ability to write Marimo notebooks. When prompted, the LangGraph agent will run exploratory data analysis using database query tools. Then, it creates a polished Marimo notebook that's presented to the user in read-only mode. This project intentionally hides the Marimo edit mode. That means that the end user only ever sees a finished, read-only data app. Ease of use and trust in AI output were the main drivers behind this decision. 4 data sources are currently supported: Snowflake, BigQuery, Postgres, and Metabase. The code for the database query tools was derived from Google's open source MCP Toolbox for Databases. There is currently no support for MCP. Instead, data query tools are hardcoded. This decision was made to ensure high quality AI queries and limit tool bloat. This is an early stage project, and is configured to only run locally at this time. [1] https://github.com/marimo-team/marimo [2] https://news.ycombinator.com/item?id=47678844
6 points · Open discussion
Hey, thanks and glad to hear the marimo + anywidget combo has been an unlock (I'm also the creator of anywidget). Clearly I'm biased, but custom widgets are a powerful primitive (marrying web & data ecosystems), and it's exciting to see coding tools making it even more accessible to build them out for specific or one-off tasks. Re: deployment, we hear you & stay tuned. You can provide input here [1]. Side note: if you're curious, I have an RFC out for widget composition (widgets within widgets) [2]. Should be shipping soon. [1] https://github.com/marimo-team/marimo/issues/5963 [2] https://github.com/manzt/anywidget/pull/942
In Show HN: Marimo pair – Reactive Python notebooks as environments for agents
manzt·Apr 7, 2026Submission

Show HN: Marimo pair – Reactive Python notebooks as environments for agents

Hi HN! We're excited to share marimo pair [1] [2], a toolkit that drops AI agents into a running marimo notebook [3] session. This lets agents use marimo as working memory and a reactive Python runtime, while also making it easy for humans and agents to collaborate on computational research and data work. GitHub repo: https://github.com/marimo-team/marimo-pair Demo: https://www.youtube.com/watch?v=6uaqtchDnoc marimo pair is implemented as an agent skill. Connect your agent of choice to a running notebook with: /marimo-pair pair with me on my_notebook.py The agent can do anything a human can do with marimo and more. For example, it can obtain feedback by running code in an ephemeral scratchpad (inspect variables, run code against the program state, read outputs). If it wants to persist state, the agent can add cells, delete them, and insta
Read the rest
ll packages (marimo records these actions in the associated notebook, which is just a Python file). The agent can even manipulate marimo's user interface — for fun, try asking your agent to greet you from within a pair session. The agent effects all actions by running Python code in the marimo kernel. Under the hood, the marimo pair skill explains how to discover and create marimo sessions, and how to control them using a semi-private interface we call code mode. Code mode lets models treat marimo as a REPL that extends their context windows, similar to recursive language models (RLMs). But unlike traditional REPLs, the marimo "REPL" incrementally builds a reproducible Python program, because marimo notebooks are dataflow graphs with well-defined execution semantics. As it uses code mode, the agent is kept on track by marimo's guardrails, which include the elimination of hidden state: run a cell and dependent cells are run automatically, delete a cell and its variables are scrubbed from memory. By giving models full control over a stateful reactive programming environment, rather than a collection of ephemeral scripts, marimo pair makes agents active participants in research and data work. In our early experimentation [4], we've found that marimo pair accelerates data exploration, makes it easy to steer agents while testing research hypotheses, and can serve as a backend for RLMs, yielding a notebook as an executable trace of how the model answered a query. We even use marimo pair to find and fix bugs in itself and marimo [5]. In these examples the notebook is not only a computational substrate but also a canvas for collaboration between humans and agents, and an executable, literate artifact comprised of prose, code, and visuals. marimo pair is early and experimental. We would love your thoughts. [1] https://github.com/marimo-team/marimo-pair [2] https://marimo.io/blog/marimo-pair [3] https://github.com/marimo-team/marimo [4] https://www.youtube.com/watch?v=VKvjPJeNRPk [5] https://github.com/manzt/dotfiles/blob/main/.claude/skills/m...
140 points · Open discussion
Thanks for the comments. I'm the original creator of marimo. Habitually running restart and run all works okay for very lightweight notebooks, but it's a habit you need to develop, and I believe our tools should work by default. It doesn't work at all for entire categories of work, where computation is heavy and the cost of a bug is high. From the blog, you will see that reactive execution not only minimizes hidden state, it also enables rapid data exploration (far more rapid than a traditional notebook), reuse as data apps, reuse as scripts, a far more intelligent module autoreloader, and much more. marimo is not just another Jupyter extension, it's a new kind of notebook. While it may not be for you, marimo has been open source for over a year and has strong traction at many companies and universities, including by many who you may not
Read the rest
view to be "real devs". The question of whether marimo will catch on has already been resolved :) https://github.com/marimo-team/marimo
In Representing Python notebooks as dataflow graphs
Hi! molab is not available for self-hosting. For self-hosting, you have a few options: Use marimo open source. This can be self-hosted in the same way that Jupyter can. Repo: https://github.com/marimo-team/marimo Use marimo's WebAssembly notebooks (exporting to WASM-powered HTML). For example, that's how Cloudflare is sharing marimo notebooks currently: https://notebooks.cloudflare.com/. Docs: https://docs.marimo.io/guides/exporting/#export-to-wasm-powe... Use within JupyterHub: https://github.com/jyio/jupyter-marimo-proxy
In Show HN: Molab, a cloud-hosted Marimo notebook workspace
akshayka·Jul 18, 2025Submission

Show HN: Molab, a cloud-hosted Marimo notebook workspace

We launched marimo [1], an open-source reactive Python notebook, last year on HackerNews. Today, the most popular recent feature request in Google Colab’s issue tracker asks for marimo support in Colab [2]. Rather than try to convince Google to replace their notebook with marimo, we decided to just build our own cloud-hosted notebook service instead. We're calling this molab (mo for marimo), and we're launching it today. You can try it at https://molab.marimo.io Some features: - Persistent storage - Link sharing (notebooks are public but undiscoverable, like secret GitHub Gists) - Download notebooks to your machine, reuse them as Python scripts or apps - Upload local notebooks to the cloud from our CLI (coming soon) - Real-time collaboration (coming soon) - Configure computational resources to obtain more CPU or GPU (coming soon) marimo i
Read the rest
s a modern notebook for modern data workflows; we also built molab on a modern tech stack: - Notebook dependencies are managed by uv, enabling lighting-fast package installation (thanks to uv’s cache and more generally its performant implementation). uv makes it easy to run molab notebooks locally, too: uvx marimo edit <notebook-url> brings the notebook down to your machine. - Persistent storage is powered by R2, Cloudflare’s zero-egress object store. - We use Pydantic logfire to monitor our deployment. - While our implementation is agnostic to the compute backend (stay tuned!), we’re currently running on Modal for fast startups (not to mention a slick developer experience). Modal sandboxes make it easy for us define containers at runtime, containing notebook code and their dependencies. (Shout out to Eric Zhang from Modal for helping us get started.) molab is free to use, as long as usage is reasonable. Our goal is to make is as easy as possible for our community to use marimo notebooks. Finally, learn more at our announcement blog: https://marimo.io/blog/announcing-molab If this interests you, please give molab a shot and please share feedback — here or on Discord (https://marimo.io/discord). P.S. This is not our commercial product, this is really just for our community. [1] https://github.com/marimo-team/marimo [2] https://github.com/googlecolab/colabtools/issues?q=is%3Aissu...
123 points · Open discussion
TIL that Apache Echarts can generate WAI-ARIA accessible textual descriptions for charts and supports WebGL. https://echarts.apache.org/en/feature.html#aria apache/echarts: https://github.com/apache/echarts Marimo notebook has functionality like rxpy and ipyflow to auto-reexecute input cell dependencies fwiu: https://news.ycombinator.com/item?id=41404681#41406570 .. https://github.com/marimo-team/marimo/releases/tag/0.8.4 : > With this release, it's now possible to create standalone notebook files that have package requirements embedded in them as a comment, using PEP 723's inline metadata marimo-team/marimo: https://github.com/marimo-team/marimo ipywidgets is another way to build event-based UIs in otherwise Reproducible notebooks. datasette-lite doesn't yet work with jupyterlite and emscripten-forge yet FWIU; but does build SQLite in W
Read the rest
ASM with pyodide. https://github.com/simonw/datasette-lite pygwalker: https://github.com/Kanaries/pygwalker .. https://news.ycombinator.com/item?id=35895899 How do you record manual interactions with ui controls and spreadsheet grids to code for reproducibility? > "Generate code from GUI interactions; State restoration & Undo" https://github.com/Kanaries/pygwalker/issues/90 > The Scientific Method is testing, so testing (tests, assertions, fixtures) should be core to any scientific workflow system. ipytest has a %%ipytest cell magic to run functions that start with test_ and subclasses of unittest.TestCase with the pytest test runner. https://github.com/chmp/ipytest How can test functions with assertions be written with Probly?
In Show HN: Probly – Spreadsheets, Python, and AI in the browser
mscolnick·Jan 14, 2025Submission

Show HN: WASM-powered codespaces for Python notebooks on GitHub

Hi HN! Last year, we shared marimo [1], an open-source reactive notebook for Python with support for execution through WebAssembly [2]. We wanted to share something new: you can now run marimo and Jupyter notebooks directly from GitHub in a Wasm-powered, codespace-like environment. What makes this powerful is that we mount the GitHub repository's contents as a filesystem in the notebook, making it really easy to share notebooks with data. All you need to do is prepend 'marimo.app' to any Python notebook on GitHub. Some examples: - Jupyter Notebook: https://marimo.app/github.com/jakevdp/PythonDataScienceHandb... - marimo notebook: https://marimo.app/github.com/marimo-team/marimo/blob/07e8d1... Jupyter notebooks are automatically converted into marimo notebooks using basic static analysis and source code transformations. Our conversion logi
Read the rest
c assumes the notebook was meant to be run top-down, which is usually but not always true [3]. It can convert many notebooks, but there are still some edge cases. We implemented the filesystem mount using our own FUSE-like adapter that links the GitHub repository’s contents to the Python filesystem, leveraging Emscripten’s filesystem API. The file tree is loaded on startup to avoid waterfall requests when reading many directories deep, but loading the file contents is lazy. For example, when you write Python that looks like ```python with open("./data/cars.csv") as f: print(f.read()) # or import pandas as pd pd.read_csv("./data/cars.csv") ``` behind the scenes, you make a request [4] to https://raw.githubusercontent.com/<org>/<repo>/main/data/car.... Docs: https://docs.marimo.io/guides/publishing/playground/#open-no... [1] https://github.com/marimo-team/marimo [2] https://news.ycombinator.com/item?id=39552882 [3] https://blog.jetbrains.com/datalore/2020/12/17/we-downloaded... [4] We technically proxy it through the playground https://marimo.app to fix CORS issues and GitHub rate-limiting.
204 points · Open discussion
Hey all, this is Akshay, co-creator of marimo, an open-source reactive Python notebook that's been on HN a few times (https://github.com/marimo-team/marimo). Since our ShowHN earlier this year (https://news.ycombinator.com/item?id=38971966), marimo has grown to over 1M downloads and dozens of contributors. To keep up, our company Marimo Inc. has raised a seed round led by Anthony Goldbloom (founder of Kaggle) and Shyam Mani at AIX Ventures. We're also backed by Jeff Dean (Google), Clem Delangue (HuggingFace), Ben Hamner (ex-Kaggle, Sumble), Charlie Marsh (Astral), Paige Bailey (Google), Lukas Biewald (Weights and Biases), Wes McKinney (Posit, Composed Ventures), Jordan Tigani (MotherDuck), and Shane Barratt. Our fundraise lets us keep doing what we’ve already been doing ­— building marimo. We’re committed to developing in the open, and to
Read the rest
keeping marimo free, open-source, and permissively-licensed. Just as we’re making marimo a great programming environment for working with data, one day we'd like to make a great platform for working with data. Our company will eventually offer a product that optionally integrates with marimo and other tools we develop, but the tools themselves will always be open source and permissively licensed. For now, our fundraise lets us fully commit to building the marimo notebook. It also gives us the room to explore building other tools for working with data. We’ve come a long way since our ShowHN, but there’s still a lot more we want to build. We're currently brainstorming our roamdap to V1 and would love your feedback: https://github.com/marimo-team/marimo/discussions/2899
In Marimo raises $5M to build an open-source reactive Python notebook

Showing the 15 most recent of 33 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.