Status: Draft / In Development
Version: 1.0
AutoReel AI is a fully automated, "set-and-forget" SaaS tool designed to revolutionize content distribution. It fetches short-form video content from a designated Google Drive folder, uses AI to analyze and generate viral metadata, processes the video with watermarks, and automatically publishes it to YouTube Shorts and Instagram Reels.
- Google Drive Integration: Automatically scans monitored folders for new video content.
- AI-Powered Analysis: Utilizes Google Gemini 1.5 Flash to analyze video visuals and audio, creating viral titles, SEO-optimized descriptions, and engaging captions with hashtags.
- Automated Video Processing: Adds custom watermarks/logos and handles format compatibility using FFmpeg via Trigger.dev background jobs.
- Multi-Platform Publishing: Automatically uploads content to:
- YouTube Shorts
- Instagram Reels
- Dashboard & Analytics: Track video status, publishing history, and link accounts via a responsive Next.js dashboard.
- Frontend: Next.js 15 (App Router), TailwindCSS, Shadcn UI
- Backend & API: Next.js Server Components & API Routes
- Database: Supabase (PostgreSQL)
- Background Jobs: Trigger.dev (for long-running video processing)
- AI Engine: Google Gemini 1.5 Flash
- Video Processing: Fluent-ffmpeg
- Authentication: OAuth 2.0 (Google, Facebook/Instagram)
Ensure you have the following installed:
- Node.js (v18+)
- npm, yarn, pnpm, or bun
You will also need:
- A Supabase project (Database & Storage)
- A Trigger.dev account (for background jobs)
- A Google Cloud Console project (for Drive & YouTube APIs)
- A Meta for Developers app (for Instagram Graph API)
- A Google AI Studio API Key (for Gemini)
-
Clone the repository:
git clone https://github.com/your-username/autoreel-ai.git cd autoreel-ai -
Install dependencies:
npm install
Create a .env.local file in the root directory and configure the following variables:
# Supabase
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
# Google (Drive, YouTube, Auth)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_REFRESH_TOKEN=your_refresh_token # For offline access if needed
# Facebook (Instagram)
FACEBOOK_CLIENT_ID=your_facebook_client_id
FACEBOOK_CLIENT_SECRET=your_facebook_client_secret
FACEBOOK_ACCESS_TOKEN=your_access_token
# Trigger.dev (Background Jobs)
TRIGGER_API_KEY=your_trigger_dev_api_key
TRIGGER_PROJECT_ID=your_trigger_project_id
# Gemini AI
GEMINI_API_KEY=your_gemini_api_key-
Start the Next.js development server:
npm run dev
The app will be available at http://localhost:3000.
-
Start the Trigger.dev CLI (in a separate terminal): To relay local background jobs:
npx trigger.dev@latest dev
The project uses two main tables in Supabase:
accounts: Stores OAuth tokens for connected services (Google Drive, YouTube, Instagram).videos: Tracks the lifecycle of each video, including:- Source attributes (Drive link, file name)
- AI-generated metadata (Title, Description, Caption)
- Processing status (
pending,processing,published,failed) - Public URLs for published content
This project is licensed under the MIT License.