A modern web application that transforms product ideas into vivid, actionable video ad concepts. Generate five detailed scenes that flow together into a perfect 60-second commercial using AI-powered scene generation.
- 🎬 AI-Powered Scene Generation: Create detailed ad scenes with camera angles, durations, and key beats
- 📝 Product-Focused: Input product name, description, and optional reference URLs
- 💾 Concept History: Save and revisit your generated ad concepts
- 🎨 Modern UI: Beautiful, responsive interface built with React and Tailwind CSS
- 🔐 User Authentication: Secure authentication using Convex Auth
- Frontend: React 19, TypeScript, Vite, Tailwind CSS
- Backend: Convex (serverless backend)
- AI: OpenAI GPT-4o-mini for scene generation
- Authentication: Convex Auth with Anonymous auth
- UI Components: Sonner (toast notifications)
- Node.js 18+ and npm
- A Convex account (sign up at convex.dev)
- OpenAI API key (or Convex OpenAI integration)
- Clone the repository:
git clone <repository-url>
cd ad_scene_generator_app- Install dependencies:
npm install- Set up Convex:
npx convex dev-
Configure environment variables:
- Set up your Convex deployment
- Configure OpenAI API key in Convex dashboard (or use
CONVEX_OPENAI_API_KEYandCONVEX_OPENAI_BASE_URL)
-
Start the development server:
npm run devThis will start both the frontend (Vite) and backend (Convex) servers.
├── src/ # Frontend React application
│ ├── components/ # React components
│ │ ├── AdSceneGenerator.tsx
│ │ ├── ConceptHistory.tsx
│ │ └── SceneCard.tsx
│ ├── App.tsx # Main app component
│ └── main.tsx # Entry point
├── convex/ # Backend Convex functions
│ ├── adScenes.ts # Ad scene generation logic
│ ├── auth.ts # Authentication
│ ├── schema.ts # Database schema
│ └── http.ts # HTTP routes
└── package.json
- Sign In: Use the anonymous authentication to sign in
- Enter Product Details:
- Product name (required)
- Product description (required)
- Reference URL (optional)
- Generate Scenes: Click "Generate Ad Scenes" to create your 60-second ad concept
- View Results: Browse through the 5 generated scenes with detailed descriptions, camera angles, and beats
- Save & Revisit: Your concepts are automatically saved and can be accessed via the history feature
npm run dev- Start both frontend and backend in development modenpm run dev:frontend- Start only the frontend (Vite)npm run dev:backend- Start only the backend (Convex)npm run build- Build the frontend for productionnpm run lint- Run TypeScript type checking and build verification
This app uses Convex Auth with Anonymous authentication for easy sign-in. You may wish to change this to a different authentication provider before deploying to production.
Deploy the frontend to any static hosting service (Vercel, Netlify, etc.) after running npm run build.
The Convex backend is automatically deployed when you run npx convex deploy. See the Convex deployment docs for more information.
Configure these in your Convex dashboard:
CONVEX_OPENAI_API_KEY- Your OpenAI API keyCONVEX_OPENAI_BASE_URL- OpenAI API base URL (optional, defaults to official API)
This project is private and proprietary.
This is a private project. For questions or issues, please contact the repository owner.