marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with Git, share as interactive web apps, and execute as Python scripts. All in a modern, AI-powered editor.
Products used by marimo
Explore the tech stack and tools that power marimo. See what products marimo uses for development, design, marketing, analytics, and more.
Productivity 1
Productivity 1
Engineering & Development 3
Engineering & Development 3


General 2
General 2

uvuv
marimo is reproducible down to the packages thanks to uv, an extremely fast package manager for Python written in Rust. uv's implementation of Python's PEP 723 makes it possible for us to save package requirements in notebook files, and create temporary environments containing them on notebook startup.

NarwhalsLightweight compatibility layer between dataframe libraries!
marimo has native support for many dataframe-like libraries, including Pandas, Polars, Ibis, and Pyarrow tables. We used to manually maintain glue code for all these libraries, which was difficult and error-prone. Narwhals let us delete all this code — we rely on narwhals for interchange between dataframe libraries, letting us focus on the core functionality of marimo instead.



