Work — the evidence wall

5 cases · all shipped

The case files

A selection of projects I've built — some from work, some for fun. Every one of them is live, linked, and open to inspection.

Case 01 · macOS Download Manager · 2026

Macget

Multi-threaded macOS download manager: chunked HTTP downloads, browser-extension capture, and YouTube/HLS video via bundled yt-dlp. SwiftUI + an actor-based download engine.

SwiftUImacOSSwiftyt-dlp

Read the MacGet install guide or the MacGet documentation.

Fig. 01 — MacGet, explained · rendered live with Remotion

Case 02 · 2026

Seedwall

Generative Wallpapers

Browse, customise and generate desktop and phone wallpapers. Nine generator plugins (cutting mat, topographic, blueprint, aurora…) are pure TypeScript functions that turn params and a seed into SVG, so the same code drives the live in-browser studio, PNG export and a resvg CLI. Includes the Cutting Mat pack, read live from Google Drive with direct downloads.

Next.jsTypeScriptSVGGenerative

Case 03 · 2026

Oratora

Live Audience Engagement

Live audience engagement for talks, classes and events — polls, word clouds, Q&A and quizzes the room joins from a phone browser with a code, no app or account. Next.js modular monolith plus a separately-scaled Socket.IO + Redis realtime tier, load-tested at 1,000 simultaneous joins.

Next.jsSocket.IORedisPostgres

Case 04 · 2026

Signal Boy

WiFi Survey Tool

Run npx signalboy and walk your house watching the dBm move on a Game Boy-style LCD. Kalman filter settles the reading, EWMA keeps the sparkline live; zero dependencies, per-OS backends for macOS/Windows/Linux, plus a native Android app that reads the phone's own radio.

Node.jsCLIAndroidRF

Case 05 · 2024

Portfolio Website

Personal developer portfolio built with Next.js 14, Tailwind CSS, and Framer Motion. Features smooth scroll animations, a particle hero, and a clean dark aesthetic.

Next.jsTailwind CSSFramer MotionTypeScript

Want the story behind a case? Read the build logs or start a new one