Projects
Things I built because I wanted them to exist.
I’m interested in personal software: small tools that make my own life easier. Products that solve problems I actually have. If you’re building in this space or thinking about it, I’d love to talk.
Page Me
shippedA private iPhone pager for agents, scripts, and automations, built around one private webhook.
SwiftUI · Cloudflare Workers · APNs · MCP · TypeScript
Sift
shippedScan a menu to estimate nutrition, detect allergens, and rank dishes by dietary goals with on-device AI.
Swift · SwiftUI · Foundation Models · Vision
Is It Clean Yet?
shippedTracks which U.S. groceries actually dropped synthetic dyes.
Next.js · Cloudflare Workers · D1 · R2
Transit
shippedA real-time Muni and BART departure board built around the simple question: should I leave now?
TypeScript · Next.js · MapLibre · 511 API · PWA
Bay Area Transit MCP
shippedTwelve public MCP tools for BART and SF Muni departures, trip planning, fares, advisories, and vehicle positions.
TypeScript · MCP · Cloudflare Workers · BART API · 511 API
Health MCP
shippedA private MCP server that puts my sleep, activity, weigh-ins, and nutrition in one place, so my AI agent sees the whole picture.
MCP · Google Health API · Lose It! · Wyze
Gigs
shippedBay Area shows from the artists I actually stream, pulled from four ticket sites and matched on Spotify IDs, with iPhone alerts.
TypeScript · Cloudflare Workers · D1 · Spotify API · Web Push
Miata Build
in progressA public build log and parts tracker for a 1997 NA Miata on a $5K budget.
1997 NA · $5K budget · suspension · exhaust · brakes
Kindle Kiosk
in progressA personal desk dashboard for Spotify, calendar, weather, and todos on an old Kindle Fire.
TypeScript · Next.js · Vercel · PWA · OpenSCAD