Podcast Automation Pipeline
React + Remotion render architecture that transforms transcript data into captioned clips and social variants with typed schema validation.
Split into the production systems I build for media work, and the utilities and experiments I build to think through problems.
React + Remotion render architecture that transforms transcript data into captioned clips and social variants with typed schema validation.
Structured reporting layer that maps watch-time drop-offs to specific edit decisions for iterative episode optimization.
Platform-safe area preview system with deterministic screenshot checks to catch layout breakage before publishing.
View Source
Template-based short-form video rendering tool that consumes payload inputs and emits batch reels with repeatable output quality.
Private Repo
A Remotion render pipeline that programmatically generates a full broadcast kit for a Twitch channel — starting-soon and intermission scenes, animated follower / sub / raid alerts, a stinger transition, and info panels.
Every asset is defined as code, so the whole pack re-renders on a single command when the brand changes. Built for the "crashdontfall" stream as a personal project — no public site, it outputs video and image files.
Remotion · React · TypeScript
A model railroad helix risk checker. It walks five risk dimensions for any helix design in O, S, HO, N, or Z scale and returns a plain-English verdict — from Looks Good to High Risk — before you cut wood.
All math runs in the browser — no server, no database, no account. Inputs serialize into the URL, so a design shares with a single link. Verdict thresholds are calibrated against published model railroad guidance, and the site ships with a glossary, FAQ, gear checklist, and three worked example builds.
Next.js 14 App Router · React · TypeScript · Tailwind CSS · Vercel
Tells anime convention vendors how many prints, charms, stickers, or commissions they need to sell to cover their table before they profit — with live sales-per-day and sales-per-hour targets.
Mobile-first one-page dashboard with a sticky desktop result panel. All math is client-side with divide-by-zero guards — no backend, no account, no tracking.
Vite · React · TypeScript · Tailwind CSS · Vercel
Detects the main colors in a reference image, then builds a miniature- painting supply list — how much of each paint you need and what it costs — before you buy.
A calm, warm-paper tool feel. Runs entirely client-side with your inputs saved in the browser — no account, no backend.
Vite · React · TypeScript · localStorage · Vercel
Helps self-managing landlords generate a professional, itemized security- deposit deduction letter with the math done correctly — the #1 way landlords lose small-claims disputes is getting this wrong.
A deliberately zero-backend build with edge security headers, a strict CSP, and a published privacy policy. Live at depositletter.com.
React 19 · Vite · @media print · Vercel
A self-hosted reading library for comics, manga, PDFs, and EPUBs that runs on your own machine and streams to any browser on your home network — your files never leave your device.
Express server that indexes your files, streams comic pages from CBZ, renders PDF pages, and generates thumbnails. No cloud, no accounts, no database. A personal project — runs locally, so there's no public site.
Node.js · Express · PWA · sharp · pdf-to-img
Browser-based combinatorial analysis tool for opening-hand consistency and mulligan decision support.
View Source
Reducer-driven game state machine built to enforce explicit transition rules and avoid hidden state drift bugs.
View Source