marimo

Edit and run reactive Python notebooks stored as plain .py files.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/swat9013/dotfiles --skill marimo-swat9013
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: marimo
Source: https://github.com/swat9013/dotfiles/tree/main/.claude-global/skills/marimo
Command: npx skills add https://github.com/swat9013/dotfiles --skill marimo-swat9013

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

marimo provides a discipline and toolset for creating, editing, and running reactive Python notebooks as plain .py files so that interactive analyses and dashboards are Git-friendly, reproducible, and editable without Jupyter.

Core Features & Use Cases

  • Reactive cell model: explicit function-argument dependencies and return-based global variable definitions produce a DAG-driven execution order.
  • Interactive UI primitives: sliders, tables, dropdowns, and buttons that expose values via .value and trigger dependent cell re-execution.
  • Developer workflows & CLI: edit, sandbox, run, convert, export, and lint commands to integrate notebooks into data analysis pipelines and deployment flows.
  • Use case: convert a Jupyter analysis into a marimo script, edit cells safely to avoid mutation issues, run as a read-only web report, and export to HTML for sharing.

Quick Start

Open notebook.py for editing and run it as a read-only web app using the marimo CLI.

Frequently Asked Questions about marimo

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I edit and run reactive Python notebooks as plain scripts?

Edit and run reactive Python notebooks as plain .py files using a CLI that supports cell-level reactive behavior and UI widgets. Cells execute based on a DAG-driven order, making analyses reproducible and Git-friendly without Jupyter.

How do reactive notebook cells manage dependencies and execution order?

Reactive notebook cells use explicit function-argument dependencies and return-based global variable definitions to produce a DAG-driven execution order. This ensures that changing one cell automatically re-executes only the dependent cells downstream.

Can I convert a Jupyter notebook into a reactive Python script for deployment?

Yes, you can convert a Jupyter analysis into a reactive Python script using the convert CLI command. You can then run it as a read-only web report or export it to HTML for lightweight deployment and sharing.

Does this reactive notebook environment support interactive UI widgets for data analysis?

Yes, reactive notebooks support interactive UI primitives like sliders, tables, dropdowns, and buttons. Widgets expose values via a .value attribute and automatically trigger the re-execution of dependent cells.

What are the limitations of using reactive Python notebooks?

Reactive Python notebooks require explicit return-based global variable declarations and non-mutation design patterns. This means standard in-place mutation of variables will not trigger reactive updates correctly, requiring disciplined coding habits.