← ProjectsABD·
(05) / ProjectJuly 2026Engineering demo

Video Upload Demo

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

Recording controls and progressive upload telemetry
Recording controls and progressive upload telemetry

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.

Built with
NuxtNestJStusS3MediaRecorder

Role

Full-stack engineer

Outcome

A working reference implementation for resilient browser video uploads with progress telemetry and finalization.