I build what I need.
Then I ship it.
Seven products across iOS, Android, and the web — six live, the newest approved and about to launch. Each one traces back to a real gap in a domain I actually live in — the clinic, the home, or the web.
A gap existed in accessible, portable clinical measurement tools. I built to fill it.
WristSkill
Wrist proprioception tracking had no lightweight, phone-based option — just bulky lab equipment.
Wrist proprioception assessment for clinicians and patients. Standard goniometers measure angle — WristSkill measures accuracy. Tracks six motion planes per hand with session history and baseline promotion.
AngleSnap
Clinicians measuring range of motion on screen had no purpose-built tool — a physical goniometer can't measure a screen.
Measure joint angles on any image or video in your browser. Click three points — proximal, joint, distal — instant reading: 55° (125°). All points draggable, nothing stored.
Clinical background Wrist proprioception research Dart-thrower's motion Ulnar-sided wrist pain SMART functional goals
Daily health habits — who's showered, how much protein — stick better with a scoreboard than a whiteboard.
Shower Tally
LiveEvery family has a shower rotation problem. Nobody admits it. The whiteboard always breaks down.
A family shower tracker — the digital whiteboard your household actually uses. Every family member gets a card: Fresh ✓, Due Soon, or Overdue. Cards sort by urgency and sync across all devices via Firebase.
"Clean or not, the family knows."
Jack Steel's Protein Tracker
Launching soonTracking one number every day only works if you actually want to open the app.
A gamified protein tracker with one job: your daily number. You set the goal — the app never calculates or recommends one — and every gram you log grows Jack Steel's muscles on a live GLSL shader, with a flag-waving, pyrotechnic celebration when you hit it. Logs stay on the device.
Approved by App Review — arriving on the App Store shortly. The site, browser demo, and blog are live now.
Problems I kept hitting on the web — AI clutter, weak prompts, pricing games — each got its own fix.
WristSkill Labs Assistant
Every AI chat widget on the web ships your conversation to a server. This one doesn't have a server to ship it to.
An AI assistant that runs entirely in your browser — a deliberate tradeoff, not a ceiling. A compact 4-billion-parameter model runs on your own device via WebGPU, grounded in this site's content. Conversations never leave your machine; the only thing it ever transmits is a contact request you approve. The compact model — and desktop-first support — are the price of keeping it free to operate and private by design, chosen on purpose. The same architecture runs larger on-device or cloud-hosted models when a project calls for more.
SlopShield
AI-generated filler was everywhere — X, Reddit, LinkedIn — and it all looks the same at a glance.
Detect and filter likely AI-generated content while you browse. On-device AI via Transformers.js — no servers, no accounts. Four filter modes from subtle badges to full hide.
Promptello
Most people get bad AI results because their prompts are vague. Nobody has time to learn frameworks.
Turn rough ideas into structured AI prompts. Side panel picks the right framework automatically and drops the finished prompt into ChatGPT, Claude, Gemini, or Perplexity.
Prior Use Estimator
Used furniture and car listings are priced on feelings. Buyers had no data to push back with.
A negotiation aid for buyers of pre-owned furniture and cars. Describe the piece — or the car's odometer — and it produces a research-backed usage estimate with a confidence rating, plus a paste-ready negotiation brief to send the seller.
Have a project in mind?
I'm open to collaborations, commissions, and conversations — across any domain I work in.