The challenge
Gym teams need to connect member records, renewals, attendance and payments without losing the context of an individual membership.
Project scope
- Owner and member experiences
- Membership and billing workflows
- Attendance and access records
Decisions behind the build
Separate the experiences
The workspace includes dedicated web and mobile applications alongside the backend. Owners and members have different tasks, so each experience can focus on the work relevant to that role.
The tradeoff
Separate applications require consistent API contracts and coordinated releases.
Keep billing history meaningful
The migration history includes audit logs, bill voiding and subscription references that survive deletion. This supports reviewing what happened after a membership changes.
The tradeoff
Historical records need explicit rules for correction and retention.
Treat local dates as a product requirement
The schema includes date-system preferences and attendance timestamp indexes. Local presentation and efficient attendance lookup are represented in the data model.
The tradeoff
Date conversion must stay consistent across reports and interfaces.
What took shape
A connected set of owner, member and mobile applications, with explicit membership, attendance and billing records.
Built with
FastAPI · Web application · Expo mobile
Based on the project implementation and documentation. Tradeoffs explain the implications of these choices; no measured business results or client feedback are claimed.