The Client and Their Brief
MyPTHub are a leading provider of fitness software. Their platform makes it simple for personal trainers (PTs) to manage and track the performance of their clients. When they originally approached us they had a pre-existing web platform that allowed their PTs to manage their list of clients, assign workouts and manage nutrition plans. This was an excellent solution for PTs but proved to be difficult for clients as their ability to track workouts relied on an internet connection. Therefore MyPTHub contacted us to see if we could expand their existing platform to mobile, encapsulating all of the current functionality and making it available to use offline. It was essential that the iOS and Android applications felt native to use whilst staying true to their brand and design.
What We Did
Using the designs provided, we built iOS and Android apps through the use of the AngularJS and Ionic frameworks. Combined, these frameworks allowed us to implement all of the requested functionality whilst providing a great user experience.
User Registration and Data Capture
To ensure that only authorised users could access the mobile app, registration was limited to PTs via the web app. We constructed a login form within the mobile app that allowed registered PTs to enter their email address and password to gain access. To prevent users having to repeat this step each time, the log in form also required the user to enter a pin code. This pin code was then displayed each subsequent time the app was opened to allow the user to quickly re-authorise their access.
Once logged in, the PT had access to the app dashboard. From here they had the ability to add and manage their clients, create and start a workout, chat directly with clients through in-app messaging and view their schedule. In order to add a client, the PT was required to register their account by entering their name, email address, phone number, weight and height. Once registered, the client was tied to the PTs account. The client then had the ability to log into the mobile app and view their own dashboard.


Assigning & Completing Workouts
In order to make the process of creating a session as simple as possible, we built an interface that would allow the PT to define the date and time of the session, select and configure the workouts to be completed and assign the session to a specific client. Each workout contained different attributes depending on the type of exercise, therefore we had to adapt the interfaces to ensure the PT could set the correct parameters for each. This was reflected in the interface shown to the client when performing the workout.
Tracking Nutrition & Progress
The app allowed the PT to create shopping lists and meal plans for each client. As the data for each food item was stored within the database, we built an interface that allowed the user to search for a specific food item by name. The results returned from the database query were then listed. Selection of a result allowed the user to define how much of that food item they’d consumed. This was then tracked towards their daily intake, allowing both the client and PT to keep track of the food consumed for a specific day.
In addition, we built interfaces that allowed the clients to track their progress by uploading photos and entering updated weights and body measurements. This allowed both the PT and client to see how their fitness journey was progressing.


In-app Messaging
To improve engagement and offer the best experience possible, we implemented the ability for PTs to chat with their clients directly through the app. This required us to implement a bespoke in-app messaging system that functioned much like other messaging applications. We also implemented push notifications to notify a user when they had received a message. Opening a notification would allow them to view the chat window and respond to the message directly.
Caching & Offline Storage
After implementing the complete MyPTHub API interface within the app, we built a layer between the app and API to provide offline caching. We also built a system to synchronise all user data to the device once the device was found to be online. Additionally to this, we also allowed exercise videos to be downloaded to the device for offline playback when the device was found to be using an un-metered WiFi connection. This allowed the app to work offline, meaning that users could watch exercise videos, log workouts and view their exercise plans while at the gym even without a data connection.

The Result
The MyPTHub apps allowed users to use the system on their Android and iOS devices while actually at the gym, which was the primary reason for their development. The offline mode we developed allowed trouble-free operation even if the gym environment did not allow mobile data connections, all before “offline-first” experiences and Progressive Web Apps (PWAs) became widespread. The native look and feel of the apps on both platforms helped to enhance the user experience on mobile devices and the designs closely matched that of the existing web app, making it much easier for users to use both.
How It Looks
Similar Projects
<p>Get In Touch</p>
<p>Thank you for your interest in our business. If you have any questions about our services, a project you’d like us to help with, or if you just want to say hello, please don’t hesitate to get in touch. We look forward to hearing from you!</p>

