TrainEasy Mobile — Fitness & Exercise App
Membership-based fitness app on Android — expert-designed workout plans, meal planner, exercise tracking, and gym membership management.
Problem
Gym-goers and solo trainers had no single app that combined structured workout plans, meal tracking, and gym membership management — they were juggling multiple apps with no unified progress view.
Solution
A membership-based Flutter app where users follow expert-designed exercise plans, log meals, and track progress over time. Gym admins manage memberships and assign plans. Works for solo training and group/gym environments.
System Architecture
Flutter mobile app targeting Android. Supabase for auth, realtime data, and storage. PostgreSQL for workouts, meal logs, body metrics, and membership records. Membership-based access control gates premium plans and coach features.
# system diagram
User (Android)
└─ Flutter app
├─ Supabase → auth + user data
├─ PostgreSQL → workouts, meals, memberships
└─ Membership gate → plan-based access control
DevOps & Deployment
Deployment
Google Play Store
CI/CD
GitHub Actions with Fastlane for automated Play Store builds and submissions
Challenges
Designing a flexible workout plan structure that works for both solo users following preset plans and coaches assigning custom plans to members. Solved with a plan template system that supports both use cases.
Key Learnings
Membership-gated features need to be enforced at the data layer, not just the UI. Supabase RLS policies ensured users could only access content their membership tier allowed.