CASE 08 / Product & systems
A gym app for three different roles.
I built separate web apps for gym management, members, and trainers, connected to a Frappe-based backend. A solo freelance build.
- THE PROJECT
- Behind the workout
- THE CONTEXT
- Freelance / Confidential client
- THE CHAPTER
- Solo end-to-end build
- THE PROBLEM
- Gym management, members, and trainers need different views of the same product.
- WHAT I OWNED
- Solo application development across Vue.js interfaces and Frappe-based backend integrations.
- THE RESULT
- Three role-specific experiences, including member and trainer PWAs. Client details remain confidential.
Original concept illustration, not a production screenshot. Internal product details are intentionally kept high-level.
01 / The problem.
The gym product had three audiences: management, members, and trainers. I built separate experiences for those roles instead of exposing the management workspace to everyone. The member and trainer interfaces were PWAs, with the application connected to Frappe, ERPNext, and HRMS.
02 / My role.
I built the application solo as a freelance engagement, across the Vue.js frontend and the Frappe-based backend. My scope included the role-specific screens, member and trainer PWAs, and the connections to ERPNext and HRMS. The client and private product details are not named here.
- My contribution
- Solo end-to-end implementation of the gym product, its role-specific frontend, and its connections to the Frappe ecosystem.
- Shared scope
- Frappe, ERPNext, and HRMS provide the underlying framework and business capabilities. Solo ownership refers to the application and integration work, not authorship of those frameworks.
- What changed
- Management, member, and trainer interfaces with member and trainer PWAs.
03 / Implementation details.
- Building the role-specific interfaces in Vue.js.
- Connecting the application to Frappe, ERPNext, and HRMS rather than rebuilding those frameworks.
- Providing member and trainer PWAs alongside the management workspace.
04 / The result.
- Built separate management, member, and trainer experiences.
- Built a Vue.js frontend over Frappe, ERPNext, and HRMS.
- Delivered PWA experiences for member and trainer roles.