What problem does it solve?
It solves the reproducibility and collaboration pain of traditional notebook workflows by replacing hidden, order-dependent execution with deterministic reactive execution in pure Python files.
Core Features & Use Cases
- Reactive notebooks as code: Re-runs the right parts automatically using a dependency DAG, preventing “run cells in the wrong order” issues.
- Git-friendly .py format: Stores notebooks as plain Python scripts so diffs and reviews are clean and reliable.
- uv-integrated, sandboxed execution: Uses PEP 723 metadata to manage dependencies consistently and reproducibly.
- AI-optimized workflow: Makes notebook edits more dependable for LLM-assisted coding by keeping structure explicit and machine-readable.
- Use cases: Parameterized data science/ML workflows, interactive dashboards, and shareable research apps (including WASM/serverless HTML exports).
Quick Start
Tell the AI: “Convert my existing notebook into a marimo .py file, add uv/PEP 723 dependencies, and refactor it into reactive cells with a simple UI control for a key parameter.”