Об этом проекте
OpenStory — это открытая платформа для превращения написанного сценария в стилизованную видеопостановку. Она анализирует сценарий и разбивает его на сцены с указанием ракурсов камеры, настроения и отслеживанием непрерывности, а затем генерирует последовательность ИИ-кадров — изображений, видео и аудио, — сохраняя единообразие персонажей, локаций, цветовых палитр и освещения across сцен. Проект описывает себя как инструмент, берущий на себя промпт-инжиниринг, генерацию и композитинг, чтобы команды могли сосредоточиться на творческой работе.
Ключевые возможности, описанные в README:
- Анализ сценария: вставьте сценарий и получите автоматическую разбивку на сцены с ракурсами камеры, настроением и отслеживанием непрерывности.
- Генерация ИИ-изображений через Fal.ai с несколькими вариантами моделей.
- Превращение изображений в видео: преобразование статичных кадров в видеоклипы с движением.
- Единообразие стиля: персонажи, локации, цветовые палитры и освещение автоматически переносятся между сценами.
- Командные рабочие пространства указаны как «скоро», включая общие библиотеки стилей, персонажей, VFX и аудио.
- Аутентификация с помощью passkey через Better Auth для входа без пароля.
- Развёртывание на периферии в Cloudflare Workers с глобальным CDN.
Архитектура и стек: приложение построено на TanStack Start, TanStack Router и Vite, работает на Bun (>= 1.3.9). Данные хранятся в Cloudflare D1 (SQLite) через Drizzle ORM. Функции ИИ используют TanStack AI, Fal.ai и OpenRouter, а PostHog — для наблюдаемости LLM. Длительная генерация обрабатывается Cloudflare Workflows для надёжного выполнения, а Cloudflare Durable Objects обеспечивают обновления прогресса в реальном времени через SSE. Ресурсы хранятся в Cloudflare R2 (совместимо с S3). Интерфейс использует Tailwind v4 и shadcn/ui. Инструменты качества включают oxlint, oxfmt, tsgo, Lefthook и Knip; тестирование — Vitest и Playwright.
Для начала работы требуется только Bun. Локальная разработка запускает весь стек — D1, R2, Workflows, Durable Objects и электронную почту — внутри Workerd через Miniflare, поэтому не нужны Docker, внешняя база данных или аккаунт Cloudflare. После клонирования и запуска bun install команда bun dev создаёт .env.local с секретами аутентификации и шифрования, выполняет миграции и заполняет локальную базу данных, а затем запускает сервер разработки на порту 3000. Для генерации ИИ требуются два ключа: FAL_KEY для генерации изображений, видео и аудио и OPENROUTER_KEY для анализа сценария с помощью LLM; bun setup добавляет их в интерактивном режиме. Дополнительная конфигурация охватывает Google OAuth, Stripe, PostHog и удалённый R2.
Репозиторий документирует широкий набор скриптов для разработки, проверок качества, тестирования, миграций базы данных и развёртывания. Развёртывание ориентировано на Cloudflare Workers с кнопкой развёртывания в один клик, которая клонирует репозиторий, подготавливает ресурсы, объявленные в wrangler.jsonc, и настраивает CI. Cloudflare Workers Builds автоматически развёртывает при пушах в main, а pull-запросы получают превью-развёртывания через GitHub Actions с выделенными базами данных D1. Проект лицензирован по MIT и приветствует вклад, направляя новичков к меткам good first issue и руководству CONTRIBUTING.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.