Technology Stack
Frontend
Next.js
React-based frontend framework
ShadCN UI
Accessible, styled UI components
Backend
Spring Boot
Java-based backend service
PostgreSQL
Stores user & video metadata
Authentication
Firebase Auth
User sign-up, login & JWT auth
Infrastructure
Redis
Caches views & metadata for fast access
RabbitMQ
Queues videos for encoding
Architecture Flow
1. User Login
Firebase Auth handles user identity
2. Upload Video
Next.js frontend sends to Spring Boot backend
3. Transcoding Queue
RabbitMQ queues jobs for FFmpeg encoding
4. Metadata Storage
Video and user metadata stored in PostgreSQL
5. Explore Page
Videos rendered by frontend with cached metadata
6. Redis Caching
Visited video pages are cached in Redis