A simple SwiftUI app that shows a client's workout performance over time.
- Shows a single client their progress over time for each exercise.
- Data must be glanceable, could be in table format but must have an additional format to quickly indicate to the client what their progress is.
- List of exercises.
- Progress will be derived from comparing ExerciseSetSummaries for an Exercise over time, instead of comparing it to the Exercise Set.
- Use the WorkoutsController to load in the WorkoutSummaries.
- I updated the data so that it was more recent since in a real world situation most exercise data would be within the past year.
Here are some screenshots showcasing the app's features:
- Used MVVM architecture for better separation of code and easier testing.
- Used Core Data to save all of the model-related data and goals, rather than having to fetch and iterate through the raw JSON each time and rely on AppStorage for saving goals.
- Added unit and UI tests.
- Refactored the code so there isn’t duplicate functionality throughout the chart code.
- Fixed the runtime Swift Charts warning.
- Fixed some minor UI bugs (for example: the GoalGaugeSection not stretching across the screen properly in landscape mode and values on charts being slightly to the left).
- Added a description for each exercise on the ExerciseDetails screen since some of the lesser known exercises aren't as obvious as to what they are.
- Added better preview data code, perhaps using more realistic data similar to the json data provided.
Proprietary Software
© 2025 SarahUniverse
This software and its source code are the exclusive property of SarahUniverse. No part of this software may be reproduced, distributed, or transmitted in any form or by any means without prior written permission.












