iOS Apps
Apps I've shipped.
I design and build iOS apps end to end: from the scoring math to the App Store listing. The blog goes deeper on how they're made.
- Current: Recovery Score Live on the App Store ↗
Swift 6 · HealthKit · SwiftUI · WidgetKit · iCloud
Current gives you a daily 0 to 100 recovery score built from your own Apple Health data. I designed the scoring algorithm from scratch, blending HRV, sleep, and resting heart rate, each scored against a personal baseline rather than a population average. The weights were validated against 30 days of real HealthKit data, then calibrated against a clinical polysomnogram.
Sleep stages are intentionally excluded from the score. Wearable sleep staging is unreliable and device-specific. An in-lab study confirmed Apple Watch reported 29 minutes of deep sleep against 70 minutes measured clinically. HRV already captures the recovery outcome that quality deep sleep produces, so scoring stages would reward hardware, not recovery. Version 2.1 applies the same standard in reverse: it added sleep consistency and sleep debt precisely because those are things a watch measures reliably.
The engineering is production-grade throughout. Swift 6 strict concurrency, HealthKit background delivery, iCloud sync, four widget sizes, and a custom guidance engine that reads the full health snapshot so the message it shows can never contradict the sub-scores. I kept architecture decision records throughout development and maintained a gotchas log for every concurrency edge case. The test suite covers 82 unit tests across the scoring engine, trend detection, notification rules, and insight generation.
Behind the buildBuilding a production iOS app solo means owning every decision: the scoring math, the HealthKit concurrency model, the data architecture, the test strategy. I brought the domain knowledge and made every call. Claude Code was the development partner throughout, reading the full codebase before touching anything, enforcing the Swift 6 constraints I documented, and running tests after changes. The expertise is mine. Claude Code made sure nothing slipped through.
- Good Night Launching soon
Swift 6 · HealthKit · SwiftUI · WidgetKit · WeatherKit · iCloud
The companion to Current, in reverse. Instead of telling you how well you recovered overnight, Good Night gives you an evening readiness score: how primed you are for a good night's sleep before you get into bed. It reads your HRV, resting heart rate, activity load, and a week of sleep debt, and scores each against your own baseline rather than a population average.
The Tonight screen is a single glanceable score with the sub-scores behind it. The Wind Down tab turns that number into action: your bedtime with a live countdown, one line of guidance, a short wind-down checklist, and a heart-rate trend that answers whether you're actually calming down. It even learns your typical bedtime from your sleep history instead of making you set it.
Under the hood it's the same production-grade approach as Current. Swift 6 strict concurrency, scoring computed entirely on-device from HealthKit, a home screen widget, WeatherKit-aware wind-down guidance, and iCloud sync across devices. It reuses the architecture I proved out building Current, so the second app started from a stronger foundation than the first.
Behind the buildGood Night is the second app I've built this way, and it moved faster because the groundwork was already mine. I designed the scoring model, the evening-readiness framing, and the Wind Down flow. Claude Code executed against the architecture I had documented while building Current, reading it at the start of every session. The domain judgment carried from one app to the next. The agent kept the details straight.