18 июня 2026 года Simon Willison выпустил datasette-apps — плагин, который превращает Datasette из витрины данных в платформу для запуска кастомных HTML+JavaScript приложений. Они живут в изолированном iframe, делают SQL-запросы к данным через защищённый канал и — при настройке — могут писать в базу через stored queries. Приложения пишутся LLM-ами: форма создания генерирует промпт со схемой базы, который можно вставить в Claude, ChatGPT или Gemini.
Контекст
Datasette — open-source инструмент Willison для публикации SQLite-баз в виде web-API и browsable интерфейса. За несколько лет он стал стандартом в дата-журналистике: загружаете CSV — и сразу получаете фильтры, API, экспорт. Кастомный интерфейс до сих пор требовал либо внешнего фронтенда, либо серверных шаблонов.
Идея Datasette Apps выросла из двух параллельных экспериментов Willison: работа с Claude Artifacts (самодостаточные HTML-приложения от LLM) и многолетняя коллекция его собственных HTML-инструментов, написанных в режиме «vibe-coding». Он сформулировал вопрос точно: что если дать Artifacts доступ к постоянной реляционной базе? Результат — datasette-apps.
Параллельно Datasette движется к стабильному релизу: в версии 1.0a31 появились stored queries — они же нужны для безопасной записи из Apps. Экосистема складывается вокруг одного паттерна: данные → API → AI-ассистент → кастомный интерфейс.
Аналитика
Архитектура безопасности здесь — показательная. Три слоя: атрибут sandbox на iframe блокирует доступ к DOM родителя, cookies и localStorage. Поверх — инжектируемый CSP-заголовок, запрещающий HTTP-запросы к внешним хостам по умолчанию. Связь между приложением и Datasette — через MessageChannel(), что закрывает атаку перехвата сообщений при навигации iframe на внешний ресурс.
Важный момент: уязвимость нашёл LLM. Claude Fable 5 в ходе security-ревью обнаружил реальную дыру — менее привилегированный пользователь мог создать приложение, которое эксфильтрировало данные через allow-listed CSP-домен от имени администратора. Willison закрыл её отдельным пермишном apps-set-csp. Это живой кейс: AI как слой security-ревью — не замена аудиту, но реально полезный инструмент, который находит то, что человек пропускает.
Паттерн «LLM генерирует изолированное приложение → sandbox с доступом к данным» тиражируется по рынку. Claude Artifacts, Google NotebookLM, теперь Datasette Apps — логика одна. Datasette делает это с open-source базой и SQL-бэкендом, без привязки к конкретному провайдеру. Для AI-first продуктов это сигнал: встроенный LLM-генератор интерфейсов скоро станет стандартной фичей data-платформ.
Кейсы применения в бизнесе
B2B-SaaS стартап: Если данные уже лежат в SQLite или доступны через Datasette, плагин позволяет выдать клиенту кастомный дашборд без полноценного фронтенд-спринта. Описываете нужный виджет в промпте со схемой базы, LLM генерирует HTML-приложение, вы вставляете и публикуете. Итерация занимает часы, а не недели.
Корпорация с legacy-данными: Datasette поддерживает подключение к PostgreSQL через плагины. Можно поднять read-only зеркало аналитической выборки и дать менеджерам кастомные визуализации без прав к prod-базе. Sandbox здесь — не маркетинг: он реально ограничивает blast radius, если приложение написано с ошибкой.
SMB и локальный бизнес в КР/СНГ: Компания ведёт данные в Excel — экспортирует в SQLite, поднимает Datasette на недорогом VPS, получает поисковый или отчётный интерфейс без программиста. Apps добавляют возможность кастомизировать этот интерфейс через промпт. Инструмент входа — ноль: open-source, лицензия Apache 2.
Кейсы в личной жизни
Разработчик: Локальная SQLite с логами проектов, задачами, финансами + Datasette Apps = персональный дашборд без деплоя фронтенда. Описываете нужный виджет в Claude, вставляете код в Apps — работает локально, данные никуда не уходят.
Контент-мейкер и аналитик: Статистика YouTube, Telegram, рекламных кабинетов — всё это можно собрать в SQLite и построить кастомные timeline-визуализации через Apps. Никакого Tableau, никаких BI-подписок — только SQL-запрос и сгенерированный LLM интерфейс.
Студент и исследователь: Публичные датасеты — данные госорганов, открытые реестры, CSV из открытых источников — загружаете в SQLite, поднимаете Datasette, строите кастомные визуализации через Apps с подсказкой LLM. Это новый способ работы с данными без навыков программирования.
Как применить сегодня
- Установите базовое окружение:
pip install datasette datasette-appsи запустите с любой SQLite-базой локально. - Зайдите на демо agent.datasette.io через GitHub-аккаунт — там доступен timeline-пример и форма создания приложений.
- В форме «Create App» скопируйте автосгенерированный промпт со схемой базы, вставьте в Claude или ChatGPT, опишите нужный интерфейс — вставьте полученный код обратно.
- Для write-операций настройте stored queries (Datasette 1.0a31+): они строго ограничивают, какие INSERT/UPDATE доступны приложению из sandbox.
- Для AI-ассистента поверх данных добавьте плагин datasette-agent — он даёт модели инструменты для создания и редактирования Apps в диалоге, Claude Artifacts-стиль.