Transform your videos into text, timestamps, and social content β powered by AI
Vidscribe is a free, open-source video and podcast transcription platform that helps content creators:
- ποΈ Transcribe videos with high accuracy using AssemblyAI
- β±οΈ Get word-level timestamps β click to jump to any moment
- π£οΈ Detect speakers β perfect for podcasts and interviews
- π± Generate social posts β AI creates Twitter, LinkedIn & Instagram content
- π Multi-language support β Hindi & English
| Dashboard | Upload | Transcription |
|---|---|---|
![]() |
![]() |
![]() |
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β VIDSCRIBE β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββ βββββββββββ βββββββββββββββββββββββ β
β β Next.js ββββββΆβ API ββββββΆβ Background β β
β β App β β Routes β β Jobs β β
β βββββββββββ βββββββββββ β (Inngest) β β
β β ββββββββββββ¬βββββββββββ β
β β β β
β βΌ βΌ β
β βββββββββββ βββββββββββββ β
β β Clerk β β AssemblyAIβ β
β β Auth β β + Geminiβ β
β βββββββββββ βββββββββββββ β
β β β β
β ββββββββββββββββ¬βββββββββββββββββββββββ β
β βΌ β
β ββββββββββββββββ β
β β Convex βββββ Real-time updates β
β β Database β β
β ββββββββββββββββ β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
1. Upload Video β 2. Store in Convex β 3. Upload to Cloudinary
β
βΌ
4. Complete! β 5. Save Results β 6. Transcribe (AssemblyAI)
β
βΌ
7. Generate Social Posts (Gemini AI)
| Layer | Technology | What it does |
|---|---|---|
| Frontend | Next.js 16 + React 19 | App router, server components |
| Database | Convex | Real-time sync, file storage |
| Auth | Clerk | User management, webhooks |
| Transcription | AssemblyAI | Speech-to-text with timestamps |
| AI | Google Gemini | Social media content generation |
| Jobs | Inngest | Background processing with retries |
| Storage | Cloudinary | Video file CDN |
| Styling | Tailwind + Neubrutalism | Bold, modern UI |
vidscribe/
βββ app/
β βββ page.tsx # Landing page
β βββ dashboard/
β β βββ page.tsx # Dashboard home
β β βββ upload/ # Upload videos
β β βββ transcriptions/ # View transcriptions
β βββ api/
β βββ inngest/ # Background job webhook
β βββ webhooks/clerk/ # User sync webhook
β
βββ components/
β βββ ui/ # UI components
β βββ dashboard/ # Dashboard components
β
βββ convex/
β βββ schema.ts # Database schema
β βββ projects.ts # Project operations
β βββ transcripts.ts # Transcript operations
β βββ users.ts # User operations
β
βββ inngest/
β βββ functions/ # Background jobs
β
βββ lib/ # Utilities
- Node.js 18+
- pnpm (recommended)
git clone https://github.com/your-username/vidscribe.git
cd vidscribe
pnpm installCreate .env.local:
# Clerk
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...
CLERK_SECRET_KEY=sk_test_...
CLERK_WEBHOOK_SECRET=whsec_...
# Convex
NEXT_PUBLIC_CONVEX_URL=https://...convex.cloud
# AssemblyAI
ASSEMBLYAI_API_KEY=...
# Cloudinary
CLOUDINARY_CLOUD_NAME=...
CLOUDINARY_API_KEY=...
CLOUDINARY_API_SECRET=...
# Google Gemini
GOOGLE_API_KEY=...# Terminal 1 - Next.js + Convex
pnpm dev
# Terminal 2 - Inngest
pnpm dlx inngest-cli@latest devVisit http://localhost:3000 π
π Clerk (Authentication)
- Create app at clerk.com
- Copy API keys to
.env.local - Add webhook:
https://your-app.com/api/webhooks/clerk- Events:
user.created,user.updated,user.deleted
- Events:
ποΈ Convex (Database)
npx convex dev
# Follow prompts to create projectποΈ AssemblyAI (Transcription)
- Sign up at assemblyai.com
- Copy API key from dashboard
βοΈ Cloudinary (Storage)
- Create account at cloudinary.com
- Get credentials from Settings β API Keys
π€ Google Gemini (AI)
- Visit Google AI Studio
- Create and copy API key
# Install Vercel CLI
pnpm i -g vercel
# Deploy
vercel --prodnpx convex deploy- Add all env variables to Vercel
- Update Clerk webhook URL to production domain
- Set Inngest webhook:
https://your-app.com/api/inngest
Full documentation available in /docs:
- Overview
- Setup Guide
- Database Schema
- Authentication
- File Upload
- Transcription
- Background Jobs
- Deployment
Contributions welcome! Please open an issue or submit a PR.
MIT License β free to use and modify.
Built with β€οΈ using Next.js, Convex, and AI



