EVRION.
IronLog — main project image

Mobile App · Fitness

A native iOS strength-training logger built with SwiftUI and SwiftData: build routines, run a live workout with per-set weight and reps, a running duration and volume readout, and an exercise library — all offline.

Project
IronLog
Year
2025
Discipline
iOS · SwiftUI
Stack
SwiftUI · SwiftData

Context

IronLog is a strength-training tracker with a single strong identity — a molten-orange accent on a deep OLED-friendly dark theme — built entirely in SwiftUI. You save routines like Push, Pull, and Leg day, then run them as live workouts.

The hard part of a gym app isn't the data model; it's the moment mid-set when you need to log a lift with one hand without breaking rhythm.

Challenge

A live workout is stateful and long-running: a session can span an hour, the app can be backgrounded between sets, and the user needs their previous numbers, a running timer, and running volume all visible at a glance.

That in-progress session also has to survive — a workout should never be lost because the phone locked or the app was swiped away.

Approach

A dedicated workout-session model drives a full-screen live view that stays up until you finish or discard it, showing each exercise with its previous set, editable weight and reps, and tick-to-complete — with duration and volume ticking up in the header.

The in-progress session is persisted through SwiftData, so it's restored automatically if the app is relaunched. Routines and a searchable exercise library make starting the next session a single tap.

Outcome

IronLog delivers the full loop a lifter needs: build a routine, start it, log sets live against your last numbers, and finish — with history and a profile behind it, all working with no account and no connection.

The persisted-session design means a workout in progress is genuinely durable, which is exactly the reliability a training log has to earn.

Technical Detail

Built for iOS with SwiftUI and SwiftData, using an observable WorkoutSession that's configured with the model context and presented as a full-screen cover whenever a session is running. Sample routines and an exercise library seed on first launch.

Everything is local and offline; the design system is a single hand-built theme with one deliberately distinct accent color.

// Gallery

Live workout — sets, reps, and a running duration and volume
Live workout — sets, reps, and a running duration and volume
Routines — Push, Pull, and Leg day, ready to start
Routines — Push, Pull, and Leg day, ready to start

// Next step

The next case study could be yours. Tell us what you're building and we'll tell you honestly how we'd ship it.