Reel0 is an AI-powered video processing tool that automatically identifies and extracts the most engaging clips from long-form videos. Upload a video, and Reel0 will analyze the content to find viral-worthy moments.
┌──────────────────────────────────────────────────────────────────────────────┐
│ Frontend │
│ (Next.js App Router) │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Home Page │ │ Pipeline │ │ Sidebar │ │
│ │ (Upload) │───▶│ Page │◀───│ (History) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────────────────────────────────────┐
│ Vercel Workflow (Orchestrator) │
│ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 1: Upload │ │
│ │ Video ───────────────────────────▶ Vercel Blob Storage │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 2: Extract Audio │ │
│ │ Vercel Sandbox (FFmpeg) ─────────▶ Convert video to audio │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 3: Transcribe │ │
│ │ Deepgram API ────────────────────▶ Audio to text with timestamps │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 4: Analyze │ │
│ │ AI SDK (Claude/GPT) ─────────────▶ Find viral moments in transcript │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 5: Extract Clips (Parallel) │ │
│ │ │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │
│ │ │ Sandbox 1 │ │ Sandbox 2 │ │ Sandbox N │ │ │
│ │ │ (FFmpeg) │ │ (FFmpeg) │ │ (FFmpeg) │ │ │
│ │ │ Clip 1 │ │ Clip 2 │ │ Clip N │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────┘ │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────────┐ │
│ │ Step 6: Store │ │
│ │ Processed clips ─────────────────▶ Vercel Blob Storage │ │
│ └──────────────────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
-
Video Upload: User uploads a long-form video which is stored in Vercel Blob Storage.
-
Audio Extraction: A Vercel Sandbox running FFmpeg extracts the audio track from the video file.
-
Transcription: The extracted audio is sent to Deepgram for transcription, returning text with precise timestamps.
-
AI Analysis: Using the AI SDK, the transcript is analyzed by Claude/GPT to identify the most engaging, viral-worthy moments based on user-defined criteria.
-
Parallel Clip Extraction: Multiple Vercel Sandboxes are spun up in parallel, each running FFmpeg to extract a specific clip at the identified timestamps. This enables fast processing of multiple clips simultaneously.
-
Delivery: Processed clips are stored in Vercel Blob and displayed to the user for preview and download.
All steps are orchestrated by Vercel Workflow, which manages the pipeline execution, handles retries, and tracks progress.
Create a .env.local file in the root directory with the following variables:
| Variable | Description |
|---|---|
BLOB_READ_WRITE_TOKEN |
Vercel Blob Storage token for storing videos and clips |
VERCEL_OIDC_TOKEN |
Vercel OIDC token for Sandbox authentication |
DEEPGRAM_API_KEY |
Deepgram API key for audio transcription |
AI_GATEWAY_API_KEY |
AI Gateway API key for accessing AI models |
# .env.local
BLOB_READ_WRITE_TOKEN=your_blob_token
VERCEL_OIDC_TOKEN=your_oidc_token
DEEPGRAM_API_KEY=your_deepgram_key
AI_GATEWAY_API_KEY=your_ai_gateway_key- Clone the repository
- Install dependencies:
pnpm install-
Set up environment variables (see above)
-
Run the development server:
pnpm dev- Open http://localhost:3000 in your browser
- Framework: Next.js 15 (App Router)
- Orchestration: Vercel Workflow
- Styling: Tailwind CSS + shadcn/ui
- Storage: Vercel Blob
- Transcription: Deepgram
- AI: AI SDK with Claude/GPT
- Video Processing: FFmpeg via Vercel Sandbox (parallel execution)
- Animations: Framer Motion
Deploy to Vercel with one click:
Make sure to configure the environment variables in your Vercel project settings.
