An Android home-screen widget that displays real-time gym occupancy and daily utilization charts.
It currently supports 784 total gyms from the following gym chains:
- John Reed
- McFit
- FitX
- Gold's Gym
- Fitness First
- All Inclusive Fitness
If you have any suggestions, feedback, or additional gyms you would like to add, reach out at [email protected]!
The project consists of two components.
The Android widget:
- fetches occupancy data from the API
- displays current occupancy
- renders a utilization chart
- allows users to select their gym
Technologies used:
- Kotlin
- Coroutines
- OkHttp
- Android AppWidget API
A serverless worker that aggregates and normalizes gym APIs.
Responsibilities:
- fetch gym lists from providers
- normalize responses across operators
- expose a unified API for the widget
Endpoints:
GET /gyms
Returns the list of available gyms.
GET /{operatorId}/{gymId}/occupancy
Returns occupancy time slots for a gym.
