Mobile app, coach app, web and API
3Fit, fitness and nutrition coaching
Personal diet plans, workout programs and live chat with a coach, in Arabic and English.
React NativeTypeScriptRedux ToolkitReact Navigationi18nextSocket.IONode.jsExpressMongoDBFirebase Cloud MessagingIn-app purchasesApple Health
Most fitness apps in the region are English-first and generic. 3Fit connects a trainee with a coach: the coach builds a diet and a training program from the trainee goal, and the trainee follows them day by day, tracks progress and chats with the coach in the same app. It is built Arabic-first, with the full interface mirrored for right-to-left.
- Products
- Trainee app for iOS and Android, coach app, marketing website, REST and Socket.IO API
- Scale
- 68 screens, 24 translation namespaces, 21 API test files
- Languages
- Arabic (right to left) and English, switchable in the app
- Payments
- Apple in-app purchase on iOS, card payments on Android and web
Screens
English
Arabic, right to left
Screenshots are from a demo account with sample data.
What trainees can do
- Follow a personalised diet: meals grouped by breakfast, lunch, snack and dinner, each with grams, calories and macros, and a daily calorie ring against the target.
- Follow a training program by weekday and location (gym or home): warm-up and main exercises with sets and reps, and a history calendar of completed workouts.
- Track progress: weight against the goal, water, calories, workout volume and steps, by week, month or year.
- Chat with a coach in real time, and browse a library of posts, recipes and exercise guides.
Engineering highlights
- Arabic-first: every screen is translated through i18next and mirrors correctly in right-to-left. The language switch restarts the app so layout direction applies cleanly.
- Real-time chat on Socket.IO with delivery and seen states, sessions between one trainee and one coach, and push notifications through Firebase Cloud Messaging with per-user notification settings.
- Subscriptions across platforms: Apple in-app purchase with receipt verification and App Store server notifications on iOS, card payments on Android and web, plus promo codes and plan durations.
- Health data: steps read from Apple Health through a native Swift module and from Health Connect on Android, shown in the statistics screens.
- Role-based API (trainee, coach, admin) on Express and MongoDB, with Jest endpoint tests that also check that Arabic and English content is returned correctly.
Demo data
The screenshots were captured on an Android emulator against a local copy of the API seeded with fictional users, meals, exercises and chat messages, so no real customer data appears.