iArt.ai
AI 모션 그래픽 소프트웨어, 누구나 사용할 수 있는 After Effects 대안, 텍스트 프롬프트로 몇 분 안에 애니메이션·설명 영상 제작
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Open-source AI-powered video sequence platform built with TanStack Start
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Transform scripts into styled video productions using AI.
OpenStory takes a script and produces a sequence of AI-generated frames — images, motion video, audio — with consistent style across every scene. Teams collaborate on shared libraries of characters, locations, and visual styles, and the platform handles the heavy lifting of prompt engineering, generation, and compositing.README 전문 보기 ↗OpenStory takes a script and produces a sequence of AI-generated frames — images, motion video, audio — with consistent style across every scene. Teams collaborate on shared libraries of characters, locations, and visual styles, and the platform handles the heavy lifting of prompt engineering, generation, and compositing.
| Category | Tools |
|---|---|
| Runtime | Bun |
| Framework | TanStack Start + TanStack Router + Vite |
| Database | Drizzle ORM + Cloudflare D1 (SQLite) |
| AI | TanStack AI + Fal.ai + OpenRouter + PostHog (LLM observability) |
| Workflows | Cloudflare Workflows (durable execution) |
| Realtime | Cloudflare Durable Objects (SSE progress updates) |
| Storage | Cloudflare R2 (S3-compatible) |
| Auth | Better Auth |
| Styling | Tailwind v4 + shadcn/ui |
| Quality | oxlint + oxfmt + tsgo + Lefthook + Knip |
| Testing | Vitest + Playwright |
| Deployment | Cloudflare Workers |
See AGENTS.md for full architecture documentation, server handler patterns, workflow patterns, and React conventions.
That's it. No Docker, no external database, no Cloudflare account — local dev runs the full stack (D1, R2, Workflows, Durable Objects, email) inside Workerd via Miniflare.
git clone https://github.com/openstory-so/openstory.git
cd openstory
bun install
bun dev
Open http://localhost:3000.
bun dev does everything: it generates .env.local (with auth/encryption secrets) on first run, migrates and seeds the local database, and starts the dev server.
To use AI generation features you need two API keys — run bun setup to add them interactively, or paste them into .env.local:
FAL_KEY — fal.ai for image, video & audio generationOPENROUTER_KEY — OpenRouter for LLM script analysisSee .env.example for all optional configuration (Google OAuth, Stripe, PostHog, remote R2).
| Command | Description |
|---|---|
bun dev | Bootstrap env, migrate + seed DB, start dev server |
bun setup | Interactive setup — add AI keys (--prod for deployments) |
bun tunnel:provision | Optional: 10 random public HTTPS names for ports 3000–3009 |
bun tunnel | Print this laptop's hostname map |
bun storybook | Start Storybook on port 6006 |
| Command | Description |
|---|---|
bun lint | Lint with oxlint (type-aware) |
bun lint:fix | Lint and auto-fix |
bun format | Format with oxfmt |
bun format:check | Check formatting without writing |
bun typecheck | Type-check with tsgo |
bun dead-code | Find unused exports with Knip |
| Command | Description |
|---|---|
bun run test | Run unit tests (Vitest) |
bun test:watch | Run tests in watch mode |
bun test:coverage | Run tests with coverage |
bun test:e2e | Run Playwright end-to-end tests |
bun test:e2e:ui | Run Playwright with interactive UI |
| Command | Description |
|---|---|
bun db:generate | Generate migrations from schema changes |
bun db:migrate:local | Apply migrations (also runs as part of bun dev) |
bun db:studio:local | Open Drizzle Studio against the local database |
| Command | Description |
|---|---|
bun run build | Build for production (note: not bun build) |
bun setup --prod | Interactive production setup + deploy |
bun cf:deploy:prd | Manual production deploy (build → migrate → deploy) |
The theatre player lives in packages/stitch and publishes as @openstory/stitch.
Run a local cut with npx. It prints an http://127.0.0.1 URL, opens that page, and runs until Ctrl+C.
npx @openstory/stitch --music score.mp3 shot.mp4
Install the OpenStory plugin for the agent skills. That install includes create-style, create-sequence, and stitch (/stitch). npx @openstory/stitch skill copies /stitch and stitch-player, the contract for embedding the React player. The plugin does not include stitch-player.
npx skills add openstory-so/skills
Grok, Claude Code, Codex, and the ChatGPT desktop app can add openstory-so/skills as a marketplace and install the OpenStory plugin. The per-client commands are in that repo.
The flags and the player API are in packages/stitch/README.md. That page is also in 中文, français, and español.
src/
components/ # React UI components (shadcn/ui based)
functions/ # Server functions (all business logic endpoints)
lib/ # Shared utilities, services, types
ai/ # AI model configs and prompt schemas
db/ # Database schema and clients (Drizzle)
services/ # Core business services
workflows/ # Cloudflare Workflows durable definitions
routes/ # TanStack Router file-based routes
api/ # Webhooks: workflows and auth only
_app/ # App shell (anonymous-browsable; actions gated behind login)
e2e/ # Playwright end-to-end tests
packages/stitch/ # Theatre player, the stitch command, and the stitch skills
scripts/ # CLI utilities and setup
See AGENTS.md for detailed architecture, data model, server handler patterns, and code conventions.
Cloudflare Workers — edge runtime, R2 storage, D1 database, global CDN.
The deploy button clones the repo into your Cloudflare account, provisions the resources declared in wrangler.jsonc, and sets up CI. For a guided setup from your own clone, run bun setup --prod.
CI/CD: Cloudflare Workers Builds auto-deploys on push to main — the same mechanism deploy-button clones use. Pull requests get GitHub Actions preview deployments with dedicated D1 databases.
See the Platform & Deployment section in AGENTS.md for environment variable configuration and platform detection.
We'd love your help building OpenStory! Whether it's fixing a bug, adding a feature, improving docs, or just sharing ideas — all contributions are welcome. Check out the issues labeled good first issue for a great place to start.
Read CONTRIBUTING.md for setup instructions, branch naming, code quality, and the pull request process.