Home

Mobile App to Web API - Workout Tracker

Technology: Swift, Xcode, Java Springboot, MySQL, Google Cloud Platform

This app allows someone to track their weight lifting statistics during a workout and
then saves them to the cloud. The user can then look at a history of their workouts
and view the details of each one.

My previous work with iOS and the Google Cloud Platform (GCP) made me take an interest in
connecting a mobile app to a GCP API. I first started the server instance on GCP's App Engine
then deployed software to it with Java Springboot. I then connected the App Engine to
a GCP SQL instance to store user data. Next, I made an entity relation diagram and configured
the SQL instance with the SQL file I made from the diagram using MySQL. Lastly, I made
all the frontend components in Xcode that communicated with the server using HTTP requests.

Demo:

Project Files

Entity relation diagram showing database design:

WorkoutController.java:

Workout.java (the entity model of a workout):

ExerciseController.java:

exercise.java (the entity model of an exercise):

WorkoutTracker.sql:

Main.storyboard (manages navigation and UI components):

ExerciseViewController.swift:

HistoryViewController.swift:

DetailsViewController.swift: