Что такое marimo?
marimo — это реактивная Python-среда для работы с данными, обучения моделей и выполнения SQL-запросов. В отличие от традиционных ноутбуков, файлы сохраняются как чистый Python (.py), что обеспечивает совместимость с Git и позволяет запускать их как скрипты или веб-приложения. Продукт полностью открытый (open source) и доступен через локальную установку или онлайн-режим.
Какие особенности у marimo?
- Реактивное выполнениеПри изменении кода или значений в одной ячейке автоматически обновляются все зависимые ячейки, устраняя ошибки управления состоянием ноутбука.
- Хранение в формате PythonНоутбуки сохраняются как стандартные
.pyфайлы, поддерживающие версионирование в Git, повторное использование как модулей и интеграцию с инструментами вроде uv и PEP 723. - Встроенная поддержка SQLСпециальные ячейки позволяют выполнять запросы к данным из Polars, Pandas, PyArrow, DuckDB, SQLite, Postgres и MySQL без переключения контекста.
- Интерактивные элементыПоддержка слайдеров, выпадающих списков, таблиц данныхфреймов и выбираемых графиков для быстрой визуализации и анализа данных.
- Инструменты разработчикаРедактор включает автодополнение в стиле GitHub Copilot, всплывающие подсказки, vim-комбинации клавиш, форматирование кода и панели отладки.
- Детерминированное исполнениеЯчейки выполняются в строго заданном порядке; удаление ячейки приводит к удалению её переменных и обновлению зависимостей, исключая скрытое состояние.
Какие случаи использования marimo?
- Образовательный процессПреподавание курсов по анализу алгоритмов, математике и машинному обучению с использованием интерактивных визуализаций и готовых примеров ноутбуков.
- Разработка приложений на основе данныхСоздание дашбордов для финансового анализа и портфельной калькуляции, которые можно публиковать как веб-приложения через WebAssembly HTML или CLI.
- Совместная работа с ИИИспользование инструмента
pairдля подключения внешних AI-агентов к активным сессиям ноутбука и редактирования кода с помощью контекстных подсказок.
Как использовать marimo?
- Установка и запускУстановите пакет и запустите редактор через CLI или откройте онлайн-версию для начала работы.
- Написание кодаСоздавайте ячейки с Python-кодом или SQL-запросами, используя встроенные инструменты автодополнения и форматирования.
- Взаимодействие с даннымиИспользуйте интерактивные виджеты (слайдеры, таблицы) для изменения параметров и мгновенного пересчета результатов в зависимых ячейках.
- ПубликацияЭкспортируйте ноутбук в HTML для статического просмотра или используйте
marimo runдля запуска его как живого веб-приложения.


