How tanaypusalkar-jpg/an-ai-powered-gym-fitness-tracking-system works
AI Gym & Fitness Assistant combines a React dashboard with a FastAPI service. Users choose a fitness feature, submit inputs through the shared API client, and receive module-specific results; the backend persists results for history and analytics. The README documents all eight feature areas and optional AI, IoT, and place-search upgrades. Edges are grounded in excerpts, the source index, or README statements; unsampled module internals and some integration wiring are not inferred.
Main entry points: App.jsx Dashboard tabs · main.py FastAPI route registry · database.py Database sessions · api.js API client
Components 31
Fitness Dashboard
- Dashboard tabs
frontend/src/App.jsx - API client
frontend/src/api.js - Workout trainer UI
frontend/src/components/WorkoutTrainer.jsx - Diet coach UI
frontend/src/components/DietCoach.jsx - Smart gym UI
frontend/src/components/SmartGym.jsx - Habit tracker UI
frontend/src/components/HabitTracker.jsx - Chat companion UI
frontend/src/components/ChatCompanion.jsx - Performance UI
frontend/src/components/PerformanceAnalyzer.jsx - Gym finder UI
frontend/src/components/GymRecommender.jsx - Analytics dashboard
frontend/src/components/AnalyticsDashboard.jsx
Fitness Services
- FastAPI route registry
backend/main.py - Request schemas
backend/models/schemas.py - Workout analysis
backend/modules/workout_trainer.py - Diet planning
backend/modules/diet_coach.py - Smart gym assistance
backend/modules/smart_gym.py - Habit risk tracking
backend/modules/habit_tracker.py - Chat companion
backend/modules/chat_companion.py - Sentiment and replies
backend/logic/chat_logic.py - Skip risk logic
backend/logic/habit_logic.py - Performance scoring
backend/modules/performance_analyzer.py - Gym recommendations
backend/modules/gym_recommender.py
Persistence and Analytics
- History aggregation
backend/modules/analytics.py - Database sessions
backend/database.py - Result records
backend/db_models.py - Fitness database
backend/fitness.db - Evaluation metrics
backend/evaluation/metrics.py
Optional Integrations
- Pose detection
- OpenAI service
- MQTT broker
- Google Places
Other components
- Fitness user
Connections 45
- Fitness user → Dashboard tabs: chooses feature
frontend/src/App.jsx - Dashboard tabs → Workout trainer UI: renders
frontend/src/App.jsx - Dashboard tabs → Diet coach UI: renders
frontend/src/App.jsx - Dashboard tabs → Smart gym UI: renders
frontend/src/App.jsx - Dashboard tabs → Habit tracker UI: renders
frontend/src/App.jsx - Dashboard tabs → Chat companion UI: renders
frontend/src/App.jsx - Dashboard tabs → Performance UI: renders
frontend/src/App.jsx - Dashboard tabs → Gym finder UI: renders
frontend/src/App.jsx - Dashboard tabs → Analytics dashboard: renders
frontend/src/App.jsx - Workout trainer UI → API client: requests
frontend/src/components/WorkoutTrainer.jsx - Diet coach UI → API client: requests
frontend/src/components/DietCoach.jsx - Smart gym UI → API client: requests
frontend/src/components/SmartGym.jsx - Habit tracker UI → API client: requests
frontend/src/components/HabitTracker.jsx - Chat companion UI → API client: requests
frontend/src/components/ChatCompanion.jsx - Performance UI → API client: requests
frontend/src/components/PerformanceAnalyzer.jsx - Gym finder UI → API client: requests
frontend/src/components/GymRecommender.jsx - Analytics dashboard → API client: requests
frontend/src/components/AnalyticsDashboard.jsx - API client → FastAPI route registry: HTTP requests
README.md - FastAPI route registry → Workout analysis: registers routes
backend/main.py - FastAPI route registry → Diet planning: registers routes
backend/main.py - FastAPI route registry → Smart gym assistance: registers routes
backend/main.py - FastAPI route registry → Habit risk tracking: registers routes
backend/main.py - FastAPI route registry → Chat companion: registers routes
backend/main.py - FastAPI route registry → Performance scoring: registers routes
backend/main.py - FastAPI route registry → Gym recommendations: registers routes
backend/main.py - FastAPI route registry → History aggregation: registers routes
backend/main.py - Workout analysis → Request schemas: validates input
backend/modules/workout_trainer.py - Workout analysis → Database sessions: opens sessions
backend/modules/workout_trainer.py - Workout analysis → Result records: writes workout logs
backend/modules/workout_trainer.py - Chat companion → Sentiment and replies: classifies and replies
backend/modules/chat_companion.py - Chat companion → Database sessions: opens sessions
backend/modules/chat_companion.py - Chat companion → Result records: writes chat logs
backend/modules/chat_companion.py - Habit risk tracking → Skip risk logic: calculates skip risk
backend/modules/habit_tracker.py - Diet planning → Database sessions: opens sessions
backend/modules/diet_coach.py - Smart gym assistance → Request schemas: validates input
backend/modules/smart_gym.py - Performance scoring → Database sessions: opens sessions
backend/modules/performance_analyzer.py - Gym recommendations → Database sessions: opens sessions
backend/modules/gym_recommender.py - History aggregation → Database sessions: reads history
backend/modules/analytics.py - Database sessions → Result records: registers tables
backend/database.py - Result records → Database sessions: uses base
backend/db_models.py - Database sessions → Fitness database: persists records
backend/database.py - Workout analysis → Pose detection: uses pose detection
README.md - Chat companion → OpenAI service: generates replies
backend/modules/chat_companion.py - Smart gym assistance → MQTT broker: listens for readings
README.md - Gym recommendations → Google Places: searches gyms
README.md