marimo-team/marimo

A reactive notebook for Python — run reproducible experiments, query with SQL, execute as a script, deploy as an app, and version with git. Stored as pure Python. All in a modern, AI-native editor.

解決する課題

marimo は、隠れた状態を排除し、コード、出力、プログラムの状態が一貫性を保つように設計された、従来のノートブック(Jupyter など)に代わるリアクティブな Python ノートブックです。ノートブックを、エラーが発生しやすい JSON のスクラッチパッドから、再現可能で git に適した Python プログラムへと変貌させます。

仕組み

セルを実行したり UI 要素を操作したりすると、依存するすべてのセルの実行が自動的にトリガーされるリアクティブプログラミングモデルを採用しています。ノートブックを純粋な Python ファイル(.py)として保存するため、スクリプトとして実行したり、インタラクティブな Web アプリとしてデプロイしたり、既存の Jupyter ノートブックから変換したりすることが可能です。また、ノートブック内で直接データフレームやデータベースをクエリするための、組み込みの SQL エンジンも備えています。

対象者

データ分析、インタラクティブなアプリの作成、および git を介したコラボレーションのために、再現可能で決定論的な実行環境を必要とするデータサイエンティスト、研究者、および開発者。

ハイライト

  • リアクティブな実行: 依存するセルを自動的に実行して一貫性を維持します
  • Git に最適: ノートブックは JSON ではなく、純粋な Python ファイルとして保存されます。
  • AI ネイティブ: データに配慮したコード生成のために、組み込みの AI アシスタントや Claude Code のような AI エージェントとの連携を備えています。
  • インタラクティブ UI: コールバックを必要とせずに、スライダー、テーブル、チャットインターフェースを Python にバインドできます。
  • データ中心: 一級の SQL サポートと高性能なインタラクティブ・データフレーム・ビューア。
  • 多用途なデプロイ: スクリプト、Web アプリ、または WASM を介してブラウザで実行できます。
  • 組み込みのパッケージ管理: インポート時のパッケージインストールと、ノートブックファイル内での要件のシリアル化をサポートしています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト