marimo

marimo

marimo team · Coding

marimo ist ein kostenloses, quelloffenes reaktives Python-Notebook für Datenwissenschaftler und Entwickler, die reproduzierbaren Code, Git-freundliche Dateien und teilbare Apps wollen.

Vorschau der Oberfläche von marimo

Über marimo

Was ist marimo

marimo ist ein quelloffenes Python-Notebook, das um eine Idee herum gebaut ist: Ihr Code und seine Ergebnisse sollten sich nie widersprechen. Statt zu verfolgen, welche Zellen Sie ausgeführt haben und in welcher Reihenfolge, führt marimo abhängige Zellen automatisch aus, sobald Sie irgendwo im Notebook einen Wert ändern. So verschwindet der versteckte Zustand, der klassische Notizbücher schwer nachvollziehbar und noch schwerer an eine Kollegin weiterzugeben macht.

Es speichert jedes Notebook als einfache .py-Datei, die Versionsverwaltung funktioniert also wie beim Rest Ihres Codes. Sie können dieselbe Datei als Skript ausführen, als interaktive Web-App starten oder über WebAssembly ganz ohne Server im Browser öffnen. Eine kostenlose gehostete Option, molab, lässt Sie es online ausprobieren.

Der Haken? Durch die reaktive Ausführung läuft eine teure Zelle bei jeder kleinen Änderung erneut, schwere Arbeitsabläufe brauchen also Sorgfalt. Sie können langsame Zellen als veraltet markieren, statt sie automatisch auszuführen, aber diese Einstellung muss man bedenken. marimo cloud steckt noch in der geschlossenen Beta, Teams, die vollständig verwaltetes Hosting ohne eigene Server wollen, müssen also auf die Öffnung warten oder die Infrastruktur selbst aufbauen.

Erste Schritte

  1. Installieren Sie das Paket mit pip (pip install marimo), uv oder conda, oder überspringen Sie die Installation und öffnen Sie ein Notebook in molab, der kostenlosen Online-Version.
  2. Führen Sie marimo edit im Terminal aus, um den Editor zu starten und ein neues Notebook anzulegen.
  3. Schreiben Sie Python in eine Zelle. Wenn Sie sie ausführen, führt marimo automatisch alle Zellen aus, die von ihren Variablen abhängen.
  4. Fügen Sie Interaktivität hinzu, indem Sie Schieberegler, Tabellen oder Diagramme an Python-Variablen binden. Callback-Funktionen sind nicht nötig.
  5. Speichern Sie Ihre Arbeit als .py-Datei und führen Sie sie dann als Skript aus oder stellen Sie sie als Web-App bereit, wenn Sie sie teilen wollen.

Produktinformationen

Ein kurzer Überblick über Preise, unterstützte Plattformen und die Leistung von marimo.

Kostenloser TarifJa
Bezahlte Tarife$0
PlattformWeb, Linux, macOS, Windows
Entwicklermarimo team
KategorieCoding
VeröffentlichungsdatumJun 2020
Zuletzt aktualisiertOct 2025
Website-Besuche144.2K
Globales Website-Ranking286.2K
API-VerfügbarkeitN/A

Am besten für

Die Nutzer, Aufgaben und Szenarien, für die dieses Tool am besten passt.

Nutzer

  • Datenwissenschaftler
  • Entwickler
  • Lehrende

Aufgaben

  • Datensätze erkunden und Diagramme bauen
  • SQL auf Dataframes und Data Warehouses schreiben
  • Ein Notebook in ein kleines internes Werkzeug verwandeln

Szenarien

  • Einen Modell-Trainingslauf Monate später reproduzieren und dieselben Zahlen erhalten.
  • Einen interaktiven Bericht teilen, in dem Prüfende einen Schieberegler ziehen, statt statische Ausgaben zu lesen.
  • Ein Dashboard im Browser ohne Backend prototypisch bauen, dank WebAssembly.

Wichtigste Funktionen

Reaktive Ausführung

Das ist die Funktion, die marimo ausmacht. Sie führen eine Zelle aus, und jede Zelle, die von ihr abhängt, läuft erneut, das Notebook kann also nicht in den veralteten, ungeordneten Zustand geraten, der Jupyter-Nutzer aus dem Tritt bringt. Ist eine Zelle teuer, können Sie marimo anweisen, abhängige Zellen als veraltet zu markieren, statt sie erneut auszuführen. Das Ergebnis ist ein Notebook, dessen Ausgaben immer zum Code darüber passen.

Speicherung als reine Python-Datei

Jedes marimo-Notebook wird als .py-Datei gespeichert, nicht als JSON. Diffs sind also lesbar, Merge-Konflikte beherrschbar, und Ihr Notebook lebt neben dem Rest des Projekts in Git. Sie können Funktionen aus einem Notebook in ein anderes importieren, was Notizbücher in wiederverwendbare Module statt in isolierte Dokumente verwandelt.

Eingebaute Interaktivität

Sie binden UI-Elemente direkt an Python-Variablen. Ein Schieberegler ist nicht über Callbacks verdrahtet. Er liest und schreibt einfach einen Wert, den Rest übernimmt marimo. Tabellen, Diagramme und Formulare funktionieren genauso, was den Weg von einer Analyse zu einer kleinen App eher erleichtert als erschwert.

SQL-Unterstützung

marimo unterstützt SQL nativ neben Python. Sie können Dataframes, Datenbanken, Data Warehouses und Lakehouses abfragen, ohne das Notebook zu verlassen, und die Ergebnisse mit Ihrer Python-Arbeit mischen. Das ist ein echter Komfort, wenn Ihre Analyse zur Hälfte in pandas und zur Hälfte in einem Warehouse lebt.

Als Skript oder App ausführen

Dieselbe Datei lässt sich als Python-Skript ausführen, über Kommandozeilenargumente parametrisieren oder als interaktive Web-App oder Foliensatz bereitstellen. Es gibt keinen separaten Export-Schritt und kein Umschreiben. Eine Datei, drei Nutzungsarten.

Ausführung im Browser über WebAssembly

marimo kann über WebAssembly vollständig im Browser laufen, ohne Server. Das senkt die Hürde, ein Notebook mit jemandem zu teilen, der nichts installieren will. So bringt Sie auch die kostenlose Option molab in Sekunden zum Laufen.

KI-native Arbeitsabläufe

marimo wurde mit Blick auf KI-Werkzeuge entworfen. Sie können das Notebook mit KI-Coding-Agenten wie Claude Code koppeln oder die eingebauten KI-Funktionen des Editors für Vervollständigung und Hilfe beim Schreiben nutzen. Das reaktive Modell hilft auch hier, weil automatische Änderungen keine versteckten Abhängigkeiten hinterlassen können.

Vor- und Nachteile

Vorteile

  • Die reaktive Ausführung beseitigt versteckten Zustand, Ausgaben passen also immer zum sichtbaren Code.
  • Notizbücher als `.py`-Dateien zu speichern macht Versionsverwaltung und Codeprüfung unkompliziert.
  • Eine Datei läuft als Skript, Web-App oder im Browser, was den Exportaufwand senkt.
  • Kostenlos und quelloffen unter einer freizügigen Lizenz, ohne Bezahlschranke für Funktionen.

Nachteile

  • Reaktive Neuläufe können bei großen Datensätzen teuer werden und zwingen Sie zu verwalten, welche Zellen veralten.
  • Es gibt weniger Drittanbieter-Plugins und Tutorials als in der ausgereiften Plugin-Bibliothek von Jupyter.
  • marimo cloud steckt noch in der geschlossenen Beta, verwaltetes Hosting ist also noch nicht für alle verfügbar.

Häufige Fragen

marimo ist ein reaktives Python-Notebook für Datenanalyse, Modelltraining und SQL-Abfragen. Es richtet sich an Menschen, die reproduzierbare Ergebnisse und Git-freundliche Dateien wollen, statt den versteckten Zustand, den klassische Notizbücher erlauben.