Prefect выкатили Prefab — UI-фреймворк для сборки интерфейсов целиком на Python. Карточки, таблицы, чарты, формы — 100+ готовых компонентов. Вложенность задаётся через context managers:
with Card(): вместо JSX. Код компилируется в JSON-протокол, а рендерит всё bundled React-фронтенд на shadcn/ui.Стейт реактивный. Класс
Rx связывает данные с компонентами, а декларативные экшены — SetState, ShowToast, SetInterval — управляют поведением без единой строки JavaScript. Получается полноценное SPA, написанное питонистом, который ни разу не открывал node_modules.Но главное здесь не DX для дашбордов. Главное — MCP Apps. Prefab встроен в FastMCP и спроектирован так, чтобы LLM-агент мог генерировать интерфейс на лету: протокол декларативный, сериализуемый, безопасный для model output. Агент дёргает тул — и возвращает пользователю не JSON-блоб, а интерактивный UI с кнопками и графиками. В Python MCP-экосистеме такого до сих пор не было.
Идею декларативного протокола с отдельным рендерером первым показал FastUI от Pydantic. Prefab перенёс подход в MCP-контекст и добавил реактивность на клиенте.
Python 3.10+,
pip install prefab-ui. Проект в активной разработке — авторы сами просят пиннить версию.
