Director's Chair
Director's Chair is a conversational, multi-shot AI video studio that unifies asset creation, video generation, editing, and export in one place.
Core trick
Stores every edit as a new immutable shot version, leaving prior versions and the timeline intact, then concatenates shots into one MP4.
Description
Director's Chair is a conversational, multi-shot AI video studio that unifies asset creation, video generation, editing, and export in one place. Using NB2 Lite for image assets and Gemini Omni Flash for video, directors create and refine consistent multi-shot stories through a single conversation—without re-rolling or losing their timeline.
1. All-in-one studio — create assets, generate video, edit, and export in a single app; no tool-hopping.
2. NB2 Lite → Omni Flash pipeline — fast image generation feeds directly into conversational video.
3. Non-destructive editing — every edit is a new version (v1 · v2 · v3); the original and timeline stay intact.
4. Conversational element swapping — change a character or object with one plain sentence, preserving motion, camera, and lighting.
5. Physics-aware generation — a physical-consistency instruction (gravity, lighting, shadows, perspective) is always applied.
6. Provable consistency — a Context Inspector shows exactly what was sent to the model on every shot.
7. Narrative timeline + one-click export — play all shots back-to-back and download a single combined MP4.
8. @tag references — mention assets and earlier shots directly in the conversation.
README excerpt
# Director's Chair — AI Multi-Shot Video Creation Studio A conversational, multi-shot video creation studio built for the Google Hackathon. This application lets users create and upload visual assets, generate visual shots through conversational prompts referencing those assets, edit individual shots in a non-destructive stateful sequence, and play back the entire narrative sequence back-to-back. ## Tech Stack - **Framework:** Next.js (App Router), React, TypeScript - **Styling:** Tailwind CSS (Minimal, dark, cinematic theme) - **Database & Storage:** Supabase (Postgres + Storage bucket) - **AI Models:** Gemini API - **Nano Banana 2 Lite** (`nb2-lite-preview` or `gemini-3.1-flash-image`) for image generation. - **Gemini Omni Flash** (`gemini-omni-flash-preview`) for stateful video generation and editing via the Interactions API. - **State Management:** TanStack React Query (`@tanstack/react-query`) --- ## Setup & Installation ### 1. Install Dependencies ```bash npm install ``` ### 2. Configure Environment Variables Copy `.env.example` to create `.env.local`: ```bash cp .env.example .env.local ``` Fill in the variables in `.env.local`: - `NEXT_PUBLIC_SUPABASE_URL` and `NEXT_PUBLIC_SUPABASE_ANON_KEY`: Get these from your Supabase Dashboard under **Settings > API**. - `SUPABASE_SERVICE_ROLE_KEY`: Service role secret key (required for server-side Storage uploads and database bypass). - `AI_PROVIDER`: Set to `mock` (to run offline using local placeholders) or `real` (to