QuFit is built on a deliberate refusal: no generated programs. A trainee browses real trainers, sees the services each one offers and what they charge, and requests a course. From there the trainer writes the program day by day — exercises, sets, reps and weights — and plans the meals against a daily calorie target. Nothing in the app invents a plan; a person wrote it, for one client.
What makes it work is that both sides see the same course change in real time. The trainee starts a session and ticks off sets as they finish them, with the current exercise held on the iOS Lock Screen and in the Dynamic Island so the phone stays in a pocket between sets. Meals and workouts are logged as they happen. The trainer requests the progress data they actually need — weight, photos, measurements — and adjusts the program against what comes back. Money stays where it already was: course fees are agreed and paid in cash, hand to hand, and the trainer confirms receipt in their own app.
Three surfaces sit on one Laravel API: the trainee app, the trainer app, and a React admin portal for users, content, payments and trainer subscriptions. Arabic is the default language rather than a translation, so right-to-left is the normal case throughout — mirrored navigation and icons, not just mirrored text.
- Browse Trainers and Their Services
- Course Requests and Approval
- Day-by-Day Training Programs
- Set-by-Set Session Logging
- Live Activity on the iOS Lock Screen
- Coach-Planned Meals and Calorie Targets
- Meal and Workout Logs
- Progress Requests — Weight, Photos, Measurements
- Posts and Reels Community Feed
- Cash Course Fees Confirmed by the Trainer
- Trainer Subscriptions Recorded by Admin
- Arabic-First Interface with Full RTL
- Light and Dark Themes, Contrast-Checked
- Admin Portal for Users, Content and Money
