Journey Tracker: a private GLP-1 companion, from first build to the App Store.
How we designed, built and shipped a native health app for iPhone, iPad and Mac, worked through App Review's toughest health-data questions, and kept every person's data on their own devices.
The project.
- Product
- Apex Development Studio's own app
- Platforms
- iPhone, iPad and Mac. Android is in planning.
- Category
- Health and fitness: GLP-1 therapy and weight-loss tracking
- Status
- Live on the App Store
- Stack
- Swift, SwiftUI, Swift Charts, HealthKit, Core Data with CloudKit, StoreKit 2
Too much to track, too little privacy.
People on GLP-1 medications such as tirzepatide and semaglutide keep track of a lot: weekly doses, injection sites, weight, symptoms, hydration and lab results. Most trackers handle it by asking for an account and storing everything on their own servers.
We wanted one place for all of it that felt like a first-party Apple app, with no account and no company server holding anyone's health data.
One app for the whole routine.
- Dose logging and countdown to the next injection, with dose changes marked on the charts
- Estimated medication levels charted over time
- Injection site rotation, so the same site isn't overused
- Labs by marker, including clinical health records imported through HealthKit
- Strides walking sessions on a map, plus weight, body composition and progress photos
- PDF reports to bring to a doctor's appointment






No server to breach.
Everything a person enters is stored on their device. When they turn on sync, it goes through their own iCloud account using Core Data and CloudKit, which Apex can't read. Health data is read through HealthKit only with permission, never leaves the device through us, and is never used for advertising.
Building it this way meant no backend to run, no database of health records to protect, and a privacy policy that can be short and true.
The hardest part wasn't the code.
Journey Tracker was first submitted in April 2026. Health apps get Apple's closest review, and this one reads clinical health records, which brings extra questions about why the data is needed and how it's protected.
It took several review cycles. Each round went the same way: answer Apple precisely, fix exactly what they flagged, document the reasoning in the review notes, and resubmit. We also removed features that could read as medical advice, so the app stays a tracker, not a clinician. The clinical health records questions were settled when version 1.5.2 was approved on 1 September 2026.
Since then, every release goes through the same gate: automated tests, an accessibility check, a privacy and security review, and a written release verification report before it's submitted.
Android, specced from the iOS app.
Journey Tracker is coming to Android. The Android version is being specced feature by feature from the iOS app and will be built natively in Kotlin and Jetpack Compose, with Health Connect in place of HealthKit.
Building something similar? See iOS app development and Android app development.