How fithub-team/laravel_backend works
This is a Laravel fitness-coaching platform: users create profiles, discover coaches, request coaching, and exchange plans and progress with coaches; administrators manage accounts and coaching data. The tree names additional capabilities such as availability, subscriptions, nutrition/workout plans, and chat. Sampled controllers show service-backed profile updates, authentication, and messaging; unsampled route and service implementations limit how much internal wiring can be asserted.
Main entry points: ChatController.php Chat API · AuthController.php Authentication API · AuthService.php Authentication service · UserRepository.php User repository
Components 27
Identity and profiles
- Authentication API
app/Http/Controllers/Api/Auth/AuthController.php - Authentication service
app/Services/Auth/AuthService.php - User repository
app/Repositories/UserRepository.php - User profile API
app/Http/Controllers/Api/user/SettingProfileController.php - Profile service
app/Services/User/ProfileService.php - Coach profile API
app/Http/Controllers/Api/coach/SettingProfileController.php - Coach service
app/Services/Coach/CoachService.php
Coach engagement
- Coach browsing API
app/Http/Controllers/Api/General/BrowseCoachController.php - Coach discovery
app/Services/General/BrowseCoach.php - Subscription request API
app/Http/Controllers/Api/user/RequestSubscriptionController.php - Subscription requests
app/Services/User/RequestSubscription.php - Coach subscriptions
app/Services/Coach/SubscriptionService.php
Coaching tools
- Plan APIs
app/Http/Controllers/Api/coach/WorkoutPlanController.php - Workout plans
app/Services/Coach/WorkoutPlanService.php - Nutrition APIs
app/Http/Controllers/Api/coach/NutritionPlanController.php - Nutrition plans
app/Services/Coach/NutritionPlanService.php - Progress APIs
app/Http/Controllers/Api/coach/ProgressController.php - Progress tracking
app/Services/Coach/ProgressService.php - Chat API
app/Http/Controllers/ChatController.php - Chat service
app/Services/Chat/ChatService.php
Administration
- Admin APIs
app/Http/Controllers/Api/Admin/TrainerController.php - Trainer management
app/Services/Admin/TrainerService.php - Admin dashboard
app/Http/Controllers/Admin/DashboardController.php
Other components
- User
- Coach
- Administrator
- Application database
config/database.php
Connections 26
- User → Authentication API: authenticates
- Authentication API → Authentication service: delegates
- Authentication service → User repository: finds or creates
- User repository → Application database: reads and writes
- User → User profile API: updates profile
- User profile API → Profile service: delegates
- Coach → Coach profile API: manages profile
- Coach profile API → Coach service: delegates
- User → Coach browsing API: browses coaches
- Coach browsing API → Coach discovery: delegates
- User → Subscription request API: requests coaching
- Subscription request API → Subscription requests: delegates
- Coach → Coach subscriptions: manages subscriptions
- Coach → Plan APIs: manages workouts
- Plan APIs → Workout plans: delegates
- Coach → Nutrition APIs: manages nutrition
- Nutrition APIs → Nutrition plans: delegates
- Coach → Progress APIs: records progress
- Progress APIs → Progress tracking: delegates
- User → Chat API: sends messages
- Coach → Chat API: sends messages
- Chat API → Chat service: delegates
- Administrator → Admin APIs: manages coaches
- Admin APIs → Trainer management: delegates
- Administrator → Admin dashboard: views metrics
- Admin dashboard → Application database: counts records