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