Video Upload Demo
A progressive video recording and upload system that streams MediaRecorder chunks into resumable S3-compatible storage.

The challenge
Uploading a recording only after it finishes creates a fragile experience for large files and unreliable connections. The system needed to move bytes while recording was still in progress.
The approach
The browser emits MediaRecorder chunks into a deferred-length tus upload. A NestJS API backed by @tus/server and @tus/s3-store handles resumability, while MinIO provides a local S3-compatible development target.
What I learned
Resumable uploads need an explicit lifecycle: accepted chunks, completion, finalization, and cleanup for abandoned multipart state.
Role
Full-stack engineer
Outcome
A working reference implementation for resilient browser video uploads with progress telemetry and finalization.