Eight product case studies, owned end to end
Each case study covers the problem, discovery, requirements, what I built, and what I'd do next. No highlight reels; the unresolved parts are documented too.
Council of AIs Budget-Driven Multi-Model Router
An open-source engine that replaces AI subscriptions with one prepaid budget, routing each task to the cheapest capable model. Trivial work goes to cheap models, high-stakes reasoning to premium ones, with spending limits enforced in code. Built by its own council: Claude Fable 5 as architect and verifier, Gemini as builder.

ShiftFlow PRO AI Scheduler for Unionized Hourly Teams
A serverless web app that turns hours of manual rostering into a compliant, budget-aware draft for each pay period, with union rules and hour guarantees enforced before a manager ever opens the board.

Matchstick Resume Match and Cover Letter Extension
Scores a resume against every requirement in a job posting, quotes the resume line that proves it, and writes a cover letter that only claims what the resume supports. No servers, no accounts.

Squint Audit-Driven Pitch Generator
Turns a website audit into a client-winning pitch, benchmarked against the prospect's strongest competitor so the pitch opens with evidence instead of adjectives.

Scrutas Forensic Web Audit Platform
A 23-module security, compliance and performance audit built on a two-stage, legally-defensible authorization model. Deep scans only ever run with explicit, recorded consent.

PavIQ Road-Condition Intelligence
A fleet-deployable sensor box mapping pothole severity city-wide through accelerometer and camera fusion. Road intelligence becomes a continuously updating data layer.
GridSentinel Self-Powered Grid Sensor
A battery-free, clamp-on sensor that turns the electricity grid edge into a live stream of outage and fault data, powered by the line it monitors.
Dwell Renter-Trust-Score Marketplace
Bank-verified trust infrastructure for shared living: a portable rental reputation for the 1.2M newcomers a year that Equifax and TransUnion can't see.