Skip to content
The Apple stack

Every framework,
used well.

Most competitors ship one or two of these as checkbox bullets ("Apple Watch app! HealthKit support!"). flexRep ships all twelve, wired into a daily-use surface. The Apple stack is the differentiator — not as branding, but as the architecture.

Below: where each framework lives in the app, and why it matters.

01 UI

SwiftUI

The entire app surface.

No UIKit fallbacks. No web view. No React Native. Every pixel is SwiftUI, including the Canvas-drawn rhythm waveform and strength glyph. iOS 26 features are wired in directly — `.contentTransition(.numericText())`, weight-aware springs, the Liquid Glass material — not adapted from an older shell.

02 Persistence

SwiftData

Every model. Every soft delete. Every batch.

Modern @Model-based persistence. Soft deletes filter via `#Predicate<T> { !$0.isDeleted }`. Hard purge after 30 days runs on launch. Import-batch UUIDs let users revert any imported batch without touching native data.

03 Health

HealthKit

Per-set metadata writes. Two-way body weight.

flexRep writes set-level workout metadata to Apple Health — not just the start/end timestamps. Your bench press at 225×5 lives in HKWorkout. Body weight syncs both ways. If you delete the app, your training already lives in Health.

04 Lock Screen

Live Activities

Rest timer + set count + exercise.

A persistent Lock Screen activity during workouts. Compact view shows the rest countdown. Expanded view shows exercise name, set count, current volume, and the bot quip. Dynamic Island leading horn = rest seconds; trailing horn = exercise abbreviation. Privacy mode redacts exercise names if requested.

05 AI

Foundation Models

Weekly insight cards.

On-device AI generates weekly training summaries. "Your bench progression slowed; deload week recommended." Nothing leaves your phone — no server inference, no cloud calls. Rule-based fallback for devices without Foundation Models support.

06 Home Screen

WidgetKit

Streak, last lift, weekly volume.

Glanceable widgets for current streak, last logged lift (with exercise + weight × reps), and weekly volume. Updates via WidgetCenter when a workout ends. Smart Stack relevance APIs surface the right widget at the right time.

07 Siri / Shortcuts

App Intents

Voice-driven logging.

Siri: "Log 225 by 5 on bench." Shortcuts: "When I leave the gym, end my workout." Focus Filters: silence all notifications except flexRep's rest-complete during workouts. Tappable via Action Button on iPhone 15 Pro and later.

08 Material

Liquid Glass

Every translucent surface.

iOS 26 native. The tab bar, the action bars, the modal sheets — all use the new glass material with proper specular highlights. Not retrofitted. Not faked with vibrancy. The app was designed for it.

09 CloudKit

iCloud Sync

Cross-device, opt-in.

CloudKit-ready from day one. Every model has defaults on every field; every relationship is optional; no `@Attribute(.unique)` on non-ID fields. Sync is opt-in via the Pro tier. The app works fully offline; sync layers on top.

10 Touch

CoreHaptics

Every weighted button.

Weight-aware haptic escalation. +5 fires a light impact; +25 fires a medium; +45 fires a heavy. Success haptic on PRs. Warning haptic on destructive confirms. No buzz spam — every haptic is tied to a real event.

11 Place

CLLocation

Gym color temperature.

Coarse-location reads detect when you're at a gym in your Places library. The gym name hashes to a deterministic hue rotation (±15°). Walk into a different gym, the entire app warms or cools by a barely-perceptible amount. Privacy: location is queried only at start-of-workout, not continuously.

12 Audio

MusicKit

Workout playlists.

Apple Music integration. Pre-workout playlists, mid-workout pause, post-workout cool-down. Now-playing bar integrates with LogView. Skip/pause via the Live Activity. The app respects your Apple Music subscription — no separate paywall.

The thesis

Why Apple-native is the differentiator.

Strong, Hevy, Fitbod, Jefit — all are cross-platform. That gives them more downloads. It also means every Apple platform feature lands six months late, in a watered-down form, behind a feature flag. The cross-platform lifting category is structurally incapable of being native.

flexRep makes the opposite bet. iPhone, Apple Watch, iPad, Mac via Catalyst. Vision Pro on the horizon. Every new Apple framework lands on day one because the app is already built for them — Foundation Models, Liquid Glass, the next Dynamic Island API, whatever ships at WWDC.

If you carry an iPhone, wear an Apple Watch, and care about how your tools feel, flexRep is built for you specifically. Apple-pilled lifter to Apple-pilled lifter.

Built for your devices.

Not adapted to them. Not retrofitted. Native end to end.