Announcing marimo AI:

Get started

Newsletter 13

Newsletter 13

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 13th marimo newsletter.

Learn marimo with our YouTube “concepts” series. marimo is a bit different from traditional notebooks: marimo notebooks are reproducible and reusable as scripts and apps, but they also have a learning curve. To help you get started, Vincent Warmerdam is hard at work building at a “marimo concepts” YouTube series that accompanies our user guide.

Feedback? If you have feedback, we want to hear from you! Hit reply or fill out our survey.

A project milestone

Just over a year after marimo’s public launch, marimo has crossed 12000 stars on GitHub — crossing Juptyter notebook’s star count, too.

It’s clear that folks are hungry for a better programming environment for working with data, and we have a lot more planned still. Excited for the journey ahead, and thankful for our community’s support!

New features

Generate notebooks with LLMs — now from the command line

Generate notebooks from a text prompt using marimo new:

marimo new "Plot an interactive 3D surface with matplotlib."

Use generated notebooks as templates to jumpstart data exploration, modeling, learning, and building. In the future, we may extend marimo new to support reading from local files as well.

This feature builds off the marimo AI hosted service. But unlike our hosted service, which runs on WebAssembly, notebooks generated using marimo new run on your machine, meaning they have no restrictions on packages.

If you find this feature useful (or not), hit reply to let us know.

🤖 Improved AI-assisted coding

We’ve improved our editor’s AI-assisted coding across the board. We’ve improved our prompts, and also made it possible to pass variables as context by tagging them with @.

AI variable context

Evaluating LLMs is difficult, so please let us know if you have feedback!

SQL improvements

marimo team member Shahmir Varqha has been hard at work improving marimo’s SQL support:

  • Trino and Timeplus are now supported engines when connecting to a database.
  • The output data type of SQL cells is now configurable
  • DuckDB SQL cells now include completions for dataframes and their columns.

SQL completions

Other updates

  • LaTeX completion. Our markdown editor now autocompletes common LaTeX symbols.
  • 🔑 Environment variables. Environment variables are automatically loaded from .env files next to your pyproject.toml. See docs for configuration.
  • 🐍 Simple-parsing and argparse support. marimo now has native support for argparse and simple-parsing, making it easy to write notebooks that double as parametrizable scripts. See docs for examples.
  • Running test functions with pytest. Test functions in notebooks are now automatically executed with pytest.

📬 In case you missed it …

Official updates from marimo team:

  • 🍃 marimo team is growing: Dylan Madisetti just joined marimo team, bringing deep systems experience and empathy for folks who work with data with him.

🍃 Community

We have over 110 contributors pushing code to marimo, 2k YouTube subscribers (in just one month!), 2k marimonauts hanging out with us on Discord — come chat!

Roundup

You all are up to so much cool stuff it’s hard to keep up! Here’s our best attempt:

Don’t forget to submit your projects to our awesome-marimo repo!

Sincerely,

marimo team 🍃