Skip to content

Releases: marimo-team/marimo

0.3.10

06 Apr 01:19
eb575f3
Compare
Choose a tag to compare

What's Changed

Quality-of-life improvements to mo.ui.file, and misc. bug fixes.

Full Changelog: 0.3.9...0.3.10

0.3.9

04 Apr 04:47
6da85df
Compare
Choose a tag to compare

What's Changed

New Features!

  • 🤖 AI Suggestions: Bring your own OpenAI API key to unlock AI-powered suggestions!
image

Get started by updating your ~/.marimo.toml config file:

[ai.open_ai]
# Get your API key from https://platform.openai.com/account/api-keys
api_key = "sk-..."
# Choose a model, we recommend "gpt-3.5-turbo"
model = "gpt-3.5-turbo"
# Change the base_url if you are using a different OpenAI-compatible API
base_url = "https://api.openai.com"

Read the docs to learn more.

Lazy evaluation/rendering of components The new library function mo.lazy() lets you defer the computation and rendering of components, especially useful if you have expensive components that are hidden by default (e.g., in a tab or accordion).

All changes

Full Changelog: 0.3.8...0.3.9

0.3.8

30 Mar 20:11
e74532a
Compare
Choose a tag to compare

What's Changed

Thanks @riyavsinha and @fuenfundachtzig for your contributions -- welcome to the marimo family!!

Highlights.

  • 📦 Pixi support! This release adds support for installing packages using the Pixi package manager.
  • 🌐 Query parameters! Use mo.query_params() to access the URL query parameters; this makes it possible to parametrize notebooks when sharing.
  • ⌨ Improved keyboard navigation! Open the cell menu with Cmd/Ctrl+p -- no mouse clicks required -- and use Cmd/Ctrl+Shift+m to toggle markdown view on and off.

All changes.

New Contributors

Full Changelog: 0.3.7...0.3.8

0.3.7

29 Mar 16:33
70145fa
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.3.6...0.3.7

0.3.6

28 Mar 19:24
5d0c854
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.3.5...0.3.6

0.3.5

27 Mar 22:03
cfc5c84
Compare
Choose a tag to compare

What's Changed

This release includes contributions from several contributors -- thanks @wasimsandhu , @dmadisetti , and @deepyaman!

Highlights. This release includes a new public API for programmatically running multiple apps (in run/read-only mode) -- this lets you create multi-page apps out of marimo notebooks, as well as seamlessly serve marimo apps as part of, eg, a larger FastAPI app.

Docs: https://docs.marimo.io/guides/deploying/programmatically.html

Example:

from typing import Annotated, Callable, Coroutine
from fastapi.responses import HTMLResponse, RedirectResponse
import marimo
from fastapi import FastAPI, Form, Request, Response


# Create a marimo asgi app
server = (
    marimo.create_asgi_app()
    .with_app(path="", root="./pages/index.py")
    .with_app(path="/dashboard", root="./pages/dashboard.py")
    .with_app(path="/sales", root="./pages/sales.py")
)

# Create a FastAPI app
app = FastAPI()

app.add_middleware(auth_middleware)
app.add_route("/login", my_login_route, methods=["POST"])

app.mount("/", server.build())

# Run the server
if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="localhost", port=8000)

All changes.

New Contributors

Full Changelog: 0.3.4...0.3.5

0.3.4

21 Mar 23:13
c2e530a
Compare
Choose a tag to compare

What's Changed

Highlights

Automatic package discovery and installation. marimo now automatically detects when you're missing packages in your Python environment, and gives you the option to install them using pip, uv, or rye. When installation is successful, cells depending on the packages are automatically re-run!

marimo will alert you to missing packages:

image

and keeps you updated on installation progress:

image

This feature makes it really easy to get started with new notebooks and projects, especially when working in a fresh Python environment: just install packages as you go!

Visualize arrays and matrices with mo.image()! mo.image() can now visualize NumPy arrays, torch Tensors, and Scipy sparse matrices as images.

image

  • fix: try to load worker from file, and fallback to inline by @mscolnick in #959
  • fix: load worker from url again by @mscolnick in #960
  • fix: update user config in wasm to fallback to config from html by @mscolnick in #967
  • mo.image(): visualize NumPy array, torch.tensor, scipy.sparse matrix by @dmadisetti in #964
  • [Snyk] Upgrade copilot-node-server from 1.19.2 to 1.20.1 by @mscolnick in #963
  • feat: package installation from pypi by @akshayka in #961
  • improvment: consistent error toasting on all request by @mscolnick in #969
  • feat: configurable package manager + uv, rye support by @akshayka in #971
  • fix: graceful shutdown for uvicorn==0.29.0 by @akshayka in #972
  • improvements for running as a script by @akshayka in #973
  • faq: document how to make marimo accessible on all network interfaces by @akshayka in #980
  • Fix mpl interactive: remove asyncio.run() by @akshayka in #981
  • tests: add data-testids to components by @mscolnick in #983
  • feat: cell actions in the command-pallete by @mscolnick in #984
  • improvement: configure package manager in the missing package alert by @akshayka in #985
  • 0.3.4 by @akshayka in #986

New Contributors

Full Changelog: 0.3.3...0.3.4

0.3.3

15 Mar 17:42
2f32a58
Compare
Choose a tag to compare

What's Changed

Improvements and bug fixes

Full Changelog: 0.3.2...0.3.3

0.3.2

11 Mar 18:08
b406436
Compare
Choose a tag to compare

What's Changed

Bug fixes and improvements.

Full Changelog: 0.3.1...0.3.2

0.3.1

06 Mar 19:55
e72dd11
Compare
Choose a tag to compare

What's Changed

This release includes bug fixes.

Full Changelog: 0.3.0...0.3.1