AI-powered short-form video analyzer for creators. Get performance predictions, quality feedback, and monetization strategies using Groq API.
- Upload videos or paste TikTok/Instagram/YouTube links
- Real AI analysis powered by Groq
- Performance scoring (0-100)
- Virality predictions (low/medium/high)
- Quality breakdown (hook, pacing, visuals, audio, CTA)
- Actionable improvement suggestions
- Monetization strategy recommendations
Frontend:
- Next.js 15 with App Router
- React 19 + TypeScript
- Tailwind CSS v4
- Lucide React icons
Backend:
- NestJS with Express
- PostgreSQL database
- FFmpeg for video analysis
- Groq API for AI
- Swagger/OpenAPI docs
cd apps/frontend
npm install
npm run dev
# Open http://localhost:3000cd apps/backend
npm install
# Setup .env with DB credentials and GROQ_API_KEY
npm run start:dev
# API runs on http://localhost:3001
# Swagger docs at http://localhost:3001/api/docsPOST /api/v1/analysis/upload- Analyze uploaded videoPOST /api/v1/analysis/link- Analyze video from URLPOST /api/v1/analysis/health- Health check
Backend (.env):
DB_USER=postgres DB_PASSWORD=postgres DB_HOST=localhost DB_PORT=5432 DB_NAME=vibe_check GROQ_API_KEY=your_groq_key NODE_ENV=development PORT=3001
Frontend (.env.local):
NEXT_PUBLIC_API_URL=http://localhost:3001
CREATE TABLE users (
id VARCHAR(36) PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);
CREATE TABLE analyses (
id VARCHAR(36) PRIMARY KEY,
user_id VARCHAR(36) NOT NULL REFERENCES users(id),
video_path VARCHAR(500),
performance_score INTEGER,
viraly_prediction VARCHAR(20),
confidence INTEGER,
quality_breakdown JSONB,
hook_analysis TEXT,
pacing_feedback TEXT,
improvements JSONB,
monetization_strategies JSONB,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);Built by Iram Bashir | [LinkedIn] | [GitHub]