Hyunjun Kim
← All work

Case 05 / 09

AI Video Streaming Platform

A fully serverless video streaming service on the Cloudflare edge — AI auto-translation into 10 languages and crypto subscription payments, built solo with AI

Live

2026.09 – 2026.10 (~3 weeks, from file dates — no git) / Solo (AI as the team) / Web (serverless)

Problem
Could one person run global video streaming — playback, subscriptions, many languages — with no servers?
My role
Planning · setting the bar · directing AI to build · deployment
Stack
Cloudflare Workers · Hono · D1 · R2 · Workers Rate Limiting

Results

Running on Cloudflare Workers — no servers to manage
Live
Running on Cloudflare Workers — no servers to manage
Multilingual UI with AI auto-translated video titles
10 languages
Multilingual UI with AI auto-translated video titles
Subscription payments verified on-chain
Crypto
Subscription payments verified on-chain
AI Video Streaming Platform
Lines of code, 39 DB migrations, ~70 versions
~11,300
Lines of code, 39 DB migrations, ~70 versions

01

The live address and real content stay private on purpose. The screens show the real UI, run locally with sample data (sample site name and titles, my own AI videos).

02

Idea / Problem

Could one person run a global video streaming service — fast playback, paid subscriptions, many languages — without operating a single server? The goal was to do everything at the edge (network points close to viewers), so there is nothing to patch, scale, or keep alive.

03

The Plan & Bar I Set

  • No servers: compute, database, media storage, rate limiting, and AI translation all on Cloudflare.
  • Payments must be verified, not trusted — a subscription activates only after the payment is confirmed independently.
  • Every viewer sees the service in their language, including video titles, without manual translation work.

04

Directing AI

  • Split the work into delivery, payments, localization, and security, and had AI build each against written rules.
  • Kept a running README of what changed in every version and why — about 70 versions in ~3 weeks.
  • Automated deploys with one idempotent script so a release is a single command.

05

Results

  • Live on Cloudflare Workers + D1 (database) + R2 (media) + Workers Rate Limiting + Workers AI.
  • 10 languages, with titles auto-translated by Workers AI.
  • Crypto subscriptions: payments checked against the blockchain record and protected from reuse; provider webhooks signature-verified; one active device per subscription.
  • Byte-range video streaming from object storage plus edge caching.
  • ~11,300 lines of TypeScript, 39 database migrations.

06

Retrospective

The edge stack let one person launch a global service with zero server operations. What I'd do from day one next time: Git and tests before the first deploy, and monitoring with backups baked into the deploy script.

More screens · 6

AI Video Streaming Platform — Player
Player
AI Video Streaming Platform — Category
Category
AI Video Streaming Platform — Subscription — paid in USDT
Subscription — paid in USDT
AI Video Streaming Platform — Same screen in Japanese (10 languages)
Same screen in Japanese (10 languages)
AI Video Streaming Platform — Desktop home
Desktop home
AI Video Streaming Platform — Desktop player
Desktop player

The real UI, run locally with sample data — site name, titles, videos and wallet address are samples; the videos are my own AI work.

(01) Review

Honest Review

If a developer had built it

Strong4
  • Payments — verified, not trusted

    Each crypto subscription payment is checked against the blockchain record and can't be reused; payment-provider webhooks are signature-verified.

  • Security basics — consistent

    Signed admin sessions with strict cookies, login lockout, security headers, every SQL query parameterized (217 places), 6 rate-limit rules.

  • Performance — edge-first video delivery

    Byte-range video streaming from object storage and edge caching, so no origin server is needed.

  • Speed & documentation — ~3 weeks, 70 versions, every change explained

    ~11,300 lines and 39 migrations; a 651-line README records why each version changed. Dates from file timestamps (no git), a minimum.

On par3
  • Architecture — standard 3-layer Workers app

    Domain logic / views / routers split; a couple of large route files remain.

  • Release & ops — one-command deploy

    A deploy script creates storage, runs migrations, deploys, and sets secrets idempotently — automated, but not CI.

  • Localization — 10 languages

    10-language dictionaries plus AI auto-translated titles; accessibility at a basic level.

Next step (in progress)3
  • Testing & version control — no tests, no git

    Backups were versioned ZIPs.

    Plan → Private Git repo, then tests on payment verification and CI that also runs the existing type check.

  • Code consistency — a few 2,000-line files

    5 files over 500 lines, some untyped spots, leftover temp files.

    Plan → Split by domain and clean up as part of the move to Git.

  • Monitoring — little visibility in production

    Minimal logging; no backup or rollback routine.

    Plan → Add error tracking, scheduled DB backups, and a rollback step to the deploy script.

Next project →

Money Navigation

An app that helps travelers lose less money on every overseas payment — finished in a 48-hour hackathon by directing multiple AI sessions

Money Navigation desktop screenshot
View case
Resume PDF