Pangeo Showcase: "marimo: an open-source reactive notebook for Python"

Title: “marimo: an open-source reactive notebook for Python”
Invited Speaker: Akshay Agrawal (ORCID: 0009-0004-6472-0055)
When: Wednesday, October 09, 2024 at 4 PM EDT
Where: Launch Meeting - Zoom
Abstract:
This talk presents marimo, an open-source reactive notebook for Python that’s stored as pure Python, executable as a script, and shareable as a data app. marimo notebooks are reactive — run a cell and marimo can automatically run dependent cells (or mark them as stale), eliminating hidden state and rapidly increasing the pace of exploratory development. Behind the scenes, marimo maintains a directed acyclic graph on cells, based on variables and definition, all powered by static analysis.

marimo comes packaged with a large library of interactive elements or widgets, ranging from sliders, text inputs, selectable charts and tables, and more, that are automatically synchronized with Python — interact with a cell and the dependent cells are automatically run. The combination of reactivity and interactivity makes marimo well-suited for rapid data exploration, as well as for building powerful data apps and web-based tools.

marimo can be viewed as a modern replacement for both Jupyter and streamlit. marimo eliminates hidden state (and hidden bugs) associated with Jupyter notebooks, lets you version notebooks with git and execute them as scripts, and is packaged a modern editor with features designed for working with data, including interactive tables, schema explorers, SQL cells, AI completion, and more.

Compared to streamlit, in marimo, when a cell is run or a UI element is interacted with, only dependent cells are run. This makes marimo a higher-performance alternative to Streamlit, since Streamlit reruns the entire script on interaction.

Agenda:

  • 10 - 15 minutes - Showcase presentation
  • 10 - 30 minutes - Discussion
  • 15 - 30 minutes - Community check-in
3 Likes