One More Set

iOS App Design & Development • 2026
Product Strategy, UX/UI Design, SwiftUI Development, App Store Launch

One More Set — Micro-Sets Fitness Coach

The brief

Most fitness apps demand 30-60 minute workout blocks. But research shows that spreading reps throughout the day — micro-sets — builds strength and habit with less friction. Do 10 pushups before your morning coffee, 15 squats at lunch, 5 pullups after work. Small sets, big totals.

Design and build a native iOS app that breaks daily rep targets into scheduled checkpoints, tracks reps three ways — manual, accelerometer, and camera-based pose detection — and uses Focus Mode to block distracting apps until you complete your set. Ship a polished 1.0 with Strava export and Vision framework integration.

One More Set — Micro-Sets Fitness Coach

Onboarding

Four-step setup gets you from download to first checkpoint in under a minute. Step one: pick your exercises from six options — pushups, squats, pullups, lunges, situps, burpees. Step two: choose daily rep targets from smart presets (Beginner, Intermediate, Advanced) or set custom numbers.

Step three: configure your schedule — wake time, sleep time, active days. Step four: set checkpoint count and spacing. The app calculates checkpoint times and per-checkpoint rep targets automatically.

One More Set — Micro-Sets Fitness Coach

Dashboard

Progress rings for each active exercise fill up throughout the day, each in its branded color — coral for pushups, green for squats, purple for pullups, cyan for lunges, yellow for situps, magenta for burpees. A countdown card shows time until the next checkpoint.

The checkpoint timeline at the bottom shows completed (filled), current (pulsing), and upcoming (outlined) dots. A streak badge tracks consecutive completion days. One screen, zero taps needed to understand your day.

One More Set — Micro-Sets Fitness Coach
One More Set — Micro-Sets Fitness Coach

Do Now & motion tracking

The Do Now screen appears at checkpoint time — compact exercise cards with +/- adjusters for manual rep counting, a Complete button, and an elapsed timer. For hands-free tracking, switch to accelerometer mode: CoreMotion samples at 50Hz, applies a low-pass filter, and detects rep peaks in real-time.

The motion tracker visualizes the accelerometer waveform live, counting reps as you move. Works for pushups, squats, situps, and burpees — any exercise with a clear up-down motion pattern. Haptic feedback confirms each detected rep.

One More Set — Micro-Sets Fitness Coach

Pose detection

The most advanced tracking mode uses Apple’s Vision framework for real-time body pose detection. The camera view overlays a skeleton with joint positions, angle indicators at key joints (elbow, knee, hip), and a live rep counter.

Angle-based rep counting uses calibration: perform one full rep to set your range of motion, then the algorithm tracks displacement and joint angles to count reps accurately. Per-exercise angle configurations ensure pushup elbow angles don’t get confused with squat knee angles.

One More Set — Micro-Sets Fitness Coach

Stats & heatmap

A 13-week calendar heatmap — styled after GitHub’s contribution grid — shows daily completion intensity. Darker squares mean more checkpoints completed. Tap any day for a full breakdown by exercise.

Weekly bar charts stack per-exercise reps in branded colors, making it easy to spot which exercises you’re favoring and which need attention. Total reps, average daily completion rate, and best streak round out the stats view.

One More Set — Micro-Sets Fitness Coach

Focus Mode

The accountability feature: FamilyControls integration blocks selected apps when a checkpoint arrives. A shield UI replaces blocked app icons with ‘Complete your set to unlock’ — showing which exercises remain and how many reps are needed.

Focus Mode activates automatically at checkpoint times and lifts once you complete the set. Users configure which apps to block in settings. It’s opt-in, respectful, and remarkably effective at breaking the ‘I’ll do it later’ loop.

One More Set — Micro-Sets Fitness Coach
One More Set — Micro-Sets Fitness Coach

Strava & exercise identity

Strava OAuth integration auto-exports daily summaries as strength training activities. The token refresh flow handles expired tokens silently, and each activity includes rep breakdown by exercise in the description field.

Each exercise owns a branded color that permeates the entire UI — progress rings, chart segments, Do Now cards, heatmap cells. The six colors (coral, green, purple, cyan, yellow, magenta) were chosen for maximum contrast on dark backgrounds and accessibility compliance.

One More Set — Micro-Sets Fitness Coach

Settings & progression

Schedule presets (Early Bird, 9-to-5, Night Owl) set checkpoint times with one tap. Per-exercise daily targets can be adjusted individually. Step-based progressive overload automatically increases targets after consecutive completion weeks.

Notification settings let you choose between standard push notifications, critical alerts, or silent badge updates for checkpoint reminders. All preferences sync via SwiftData with CloudKit backup.

Technical details

Swift 6 strict concurrency from day one — zero data race warnings at compile time. Vision framework for real-time body pose detection with custom angle-based rep counting. CoreMotion for accelerometer-based motion detection at 50Hz with low-pass filtering.

FamilyControls and ManagedSettings for Focus Mode app blocking — three system extensions (ShieldAction, ShieldConfiguration, DeviceActivity). Strava OAuth with PKCE, token refresh, and activity export. 45 Swift files, 119 unit tests, SwiftData with CloudKit sync.

One More Set — Micro-Sets Fitness Coach

Results

Built from concept to App Store — product strategy, UX/UI design, and full SwiftUI development in-house. 45 Swift files, 119 tests, 3 system extensions, Vision-based pose detection, and Focus Mode app blocking that no other micro-sets app offers.

The same SUUR approach: find the friction in fitness habits, eliminate it with smart engineering, ship with conviction.