Warning
This project is under active development. APIs, config shapes, and database schema may change between releases without notice — expect breaking changes until a stable release.
Open-source AI image & video generation studio for Next.js.
Try the demo »
Introduction ·
Features ·
Tech Stack ·
Self-Hosting ·
Contributing
Studio is a config-driven, self-hostable AI generation surface you install into your own Next.js app. Bring a ComfyUI workflow running on RunPod serverless plus your own auth, billing, moderation, and storage providers — Studio handles the rest: the generation pipeline (via Trigger.dev), realtime progress, and the gallery UI.
It's a library, not a hosted product: bun add @two-71/studio, wire it up with a single StudioConfig object, and mount <Studio />. See it live at studio.271.dev.
- Multi-model catalog — text-to-image across any number of models, each with its own ComfyUI workflow, aspect ratios, and resolutions
- Image-to-video — animate any generated image with a video workflow
- ComfyUI on RunPod serverless — bring your exact workflow graph; Studio maps prompts, seeds, and controls onto its nodes
- Realtime progress — live pipeline steps streamed to the client via Trigger.dev realtime
- Controls — LoRAs, pose control images, and reference-image identity editing
- Gallery — lightbox, bulk select/delete, copy/download, optimistic cards
- Prompt enhancement & titles — optional LLM-backed prompt rewrite and result naming
- Watermarking — SVG badge, text, or diagonal watermark baked into outputs
- Pluggable providers — auth, billing (coins/credits), moderation, and storage are interfaces; sensible free/open defaults included
- Theming — light/dark/system with host-controlled branding
- Next.js – framework
- TypeScript – language
- Tailwind – CSS
- Trigger.dev – background tasks + realtime
- RunPod – serverless ComfyUI inference
- Drizzle – ORM
- TanStack Query – data fetching
- Zustand – state
- shadcn/ui – components
- Cloudflare R2 – storage (any S3-compatible bucket)
Everything runs on your own accounts — your Next.js host, your RunPod endpoints, your Trigger.dev project, your bucket, your database.
packages/studio/README.md— install + full wiring guide for theStudioConfigobjectdocs/runpod-setup.md— stand up a serverless ComfyUI endpointdocs/trigger-setup.md— background tasks + realtimedocs/providers.md— auth, billing, moderation, storage interfacesdocs/deploy-vercel.md— production deployment
packages/studio— the@two-71/studiolibraryapps/demo— the reference app behind studio.271.dev: guest mode (no signup, daily IP-based quota), a Krea 2 image model with LoRAs/pose/reference controls, and an LTX image-to-video model
The fastest way to see Studio running locally is the demo app:
bun installThen follow apps/demo/README.md for env vars, database migrations, the Trigger.dev dev server, and standing up the RunPod endpoint.
- Open an issue if you believe you've encountered a bug.
- Make a pull request to add new features, make quality-of-life improvements, or fix bugs.
See CONTRIBUTING.md for the full guide.
| Package | Version |
|---|---|
| bun | 1.2+ |
| node | 20+ |