
To get updates like this one delivered to your inbox, subscribe to our newsletter.
This is your monthly reminder that at marimo, we’re on a mission to make the
world’s best programming environment for working with data, and it’s all free
and open source. Just pip install marimo
or uv add marimo
to get started!
You’re reading the 14th marimo newsletter.
Catch us at PyCon! marimo team is heading to PyCon US! Come by our talk on Friday 5/16, 12:30pm EST, to learn how marimo “compiles” notebooks into dataflow graphs for reproducibility and reusability; and, after the talk, join us for lunch!
Akshay, Myles, Dylan, and Trevor in particular will be at PyCon 5/16-1/18, and we’re happy to meet up with any and all of you. To reach us directly, and to coordinate with other marimonauts at PyCon, feel free to use our pycon-2025 Discord channel.
Feedback? If you have feedback, we want to hear from you! Hit reply or fill out our survey.
New features
We’ve released lots of new features this past month!
Reuse functions and classes from notebooks. You can now import top-level functions and classes defined in a marimo notebook into other Python scripts or notebooks using normal Python syntax, letting you write code like
from my_notebook import my_function, my_class
This new feature goes a long way to making your notebooks more maintainable and reusable: To learn more, visit our docs.
🐛 Post-mortem debugging. Debug exceptions with post-mortem debugging; on error, a button below the stack trace lets you start the debugger at the point of exception.
🔥 GPU memory statistics. The marimo editor footer now shows you GPU RAM statistics at a glance, when using NVIDIA cards.
PyIceberg integration. Connect seamlessly to your Iceberg tables via REsT, Glue, and more, with automatic table population in the Datasources panel.
Expanded Ibis, PySpark, Datafusion, and MotherDuck Support. Ibis connections now automatically populate databases and schemas in the Datasources panel. Additionally, easily connect to PySpark, Datafusion, and MotherDuck directly from the “Add Connection” UI.
Resizable notebook columns. Resize columns when editing multi-column notebooks.
📝 Python-aware markdown cells. You can now toggle between markdown string formats (r-string, f-string)
using markdown editor cells. Directly edit f-string
markdown in the markdown editor, with Python autocompletion support inside { }
brackets.
{}
brackets.
📝 Quarto integration. Open .qmd
files, export to multiple formats, or
embed reactive marimo notebooks directly into your Quarto site using our Quarto
extension.
📝 MkDocs integration. Embed interactive marimo notebooks and playgrounds directly into your MkDocs site using our MkDocs plugin.
Thread lifecycles. marimo now provides tools to manage themarimo edit --sandbox mynotebook.md
to edit markdown notebooks in sandbox mode, automatically tracking and recording dependencies.
📬 In case you missed it …
YouTube
If you have a colleague who still uses Jupyter, they may appreciate this video we made recently. It tells them all about the habits they may need to let go of once they switch to marimo: https://www.youtube.com/watch?v=Fqw__x3P_VY
:books: marimo learn
We’ve launched the probability series on marimo learn — interactive notebooks adapted from Chris Piech’s Stanford CS109 reader.
:bell: Open Call for Contributions. Browse our course issues or propose a new topic — shout-out to @peter-gy, @etrotta, @debajyotid2, @Mustjaab, and @julius383!
🍃 Community
We’ve just crossed 13.2k stars on GitHub, have 134 contributors pushing code to marimo, over 2.5k YouTube subscribers and more than 2.1k marimonauts hanging out on Discord — join the conversation!
Roundup.
📈 Univariate Drift Detection Notebook & ️ Fast Feature Drift Notebook by Dr. André Schemaitat — explore and compare KDE-based drift detection interactively.
🎮 Chess-engine experiments by Maxence Frenette — A Python framework for a custom chess engine, with marimo notebooks for experimentation.
🦀 GRPO with Cargo feedback — a suite of four marimo notebooks (train, viz, inference, eval) that fine-tune a 1.5 B-parameter LLM with GRPO and Cargo-based feedback for Rust code generation.
🚪 Monty Hall simulation by Tim Dechant — interactively explore Bayesian decision making through the classic “Let’s Make a Deal” puzzle.
🔵 Blue Sky posting tool — publish to BlueSky straight from your marimo notebook.
📊 Causal inference notebook by Sai Surya Madhav — explore correlation versus causation on the IHDP dataset with relevant visualizations that tie theory to data.
🎵 Lana Del Rey lyrics analysis — see how one of our ambassadors used Python, the Spotify API & Genius API for a nuanced text-analysis deep dive.
Don’t forget to submit your projects to our awesome-marimo repo!
Sincerely,
marimo team 🍃
