← All projects
Full-Stack Platform2026Frontend & Backend Developer

HyperTube

A video streaming platform built to explore distributed system design end to end, from responsive UI to async media processing pipelines.

Next.jsReactTypeScriptTailwindCSSDjangoDRFPostgreSQLRedisCeleryDockerFFmpegHLS.jsTMDB API

01 · Problem

What made this hard

Building a streaming platform means solving several engineering problems simultaneously: responsive video playback with subtitle synchronization, a search experience backed by external metadata APIs, multilingual support that persists across requests, and an async media pipeline that doesn't block the UI during transcoding.

02 · Approach

How I solved it

Designed and implemented the frontend with Next.js and TypeScript, handling responsive layouts, video playback, and the search experience. Built backend endpoints in Django REST Framework to support the home page, library, continue watching, search, and watch history. Implemented language switching across English, French, and Spanish with language-aware API requests. Contributed to subtitle handling and worked within an existing async media architecture built on Redis, Celery, FFmpeg, and PostgreSQL. Containerized the full stack with Docker Compose.

03 · Result

What came out of it

A responsive streaming platform where users browse, search, and watch videos with subtitles in multiple languages. The media processing pipeline runs asynchronously via Celery workers, keeping the interface responsive during transcoding operations.

04 · Highlights

Key technical details

Responsive streaming UI with Next.js and TypeScript
Multilingual support with language-aware requests
Subtitle handling for multiple subtitle formats
Django REST Framework backend endpoints
Async media processing with Celery workers
Redis for caching and message brokering
Docker Compose for reproducible environments

 

Constraints

  • Real-time media processing without blocking the UI
  • Subtitle synchronization across multiple formats
  • Language-aware requests across the full stack

05 · Architecture

How the pieces fit

Frontend

Next.js application with TypeScript and TailwindCSS, handling video playback, user authentication, metadata browsing, and responsive layouts.

Backend API

Django REST API serving media metadata, user management, search, and subtitle data with PostgreSQL persistence.

Async Pipeline

Celery workers with Redis broker handling FFmpeg transcoding, thumbnail generation, and subtitle extraction asynchronously.

06 · Decisions

Choices worth naming

  1. 01

    Next.js for the frontend

    Server-side rendering benefits on metadata-heavy pages and simpler routing for the streaming interface.

  2. 02

    Django REST Framework

    Django's ORM and admin interface reduced iteration time for the data-heavy media management workflows.

  3. 03

    Celery + Redis async queue

    Decoupled media processing from the request cycle, keeping the UI responsive during transcoding.

07 · Trade-offs

What I gave up

chosePostgreSQL
overMongoDB

Media metadata has clear relational structure. SQL constraints prevented data inconsistencies across related entities.

choseDocker Compose
overKubernetes

Single-machine deployment was sufficient for the project scope. K8s would add complexity without proportional benefit.

08 · Reflection

Lessons and what's next

Lessons

  • ·Async architectures require careful error handling for truly resilient pipelines
  • ·Media processing benefits from early investment in test fixtures
  • ·Streaming state is harder to manage than traditional request-response flows

Future

  • Add WebSocket-based real-time transcoding progress
  • Explore adaptive bitrate streaming
  • Implement collaborative watchlists

Team Project

My Contributions

Frontend

  • Designed and implemented the Home page
  • Built the Movie Library interface
  • Implemented Continue Watching and Watch History views
  • Built the Search UI and search experience
  • Responsive UI with Next.js, TypeScript, and TailwindCSS

Backend

  • Implemented backend endpoints for Home, Library, Search, Watchlist, and Watch History
  • Built Continue Watching and Search API integration

Localization

  • Implemented language switching across the application
  • Added support for English, French, and Spanish
  • Implemented language-aware API requests

Streaming

  • Worked on subtitle handling for multiple formats
  • Debugged streaming issues and improved playback reliability

Engineering Knowledge

  • Contributed to an existing async media architecture built on Django, Redis, Celery, FFmpeg, and PostgreSQL

Next case study

BADAsS

A datacenter network architecture exploring modern routing and scalable infrastructure.