A comprehensive React Native mobile application that combines AI-powered exercise tracking, medical consultations, and health monitoring capabilities. Built with pose estimation technology and integrated healthcare provider dashboards.
π₯ Watch Demo Video
| Yash Srivastava Roll No: 23BDS071 |
Karan Kabdal Roll No: 23BDS028 |
| Yash Birje Roll No: 23BDS070 |
.
βββ .expo/
βββ Components/
β
βββ Admin/
β
βββ Auth/
β βββ AuthScreen.tsx
β βββ LoginScreen.tsx
β βββ RegisterScreen.tsx
β
βββ Chatbot/
β βββ HealthChatbot.tsx
β βββ README.md
β
βββ Common/
β
βββ Consent/
β
βββ Dashboard/
β βββ DoctorDashboard.tsx
β βββ HealthMetrics.tsx
β βββ PatientAnalytics.tsx
β βββ PatientDashboard.tsx
β βββ PatientList.tsx
β βββ WorkoutSuggestions.tsx
β
βββ DataSharing/
β
βββ Exercise/
β
βββ ExercisePrescription/
β βββ DoctorPrescriptionInterface.tsx
β
βββ Profile/
β
βββ Welcome.tsx
β
βββ assets/
β
βββ backend/
β βββ __pycache__/
β βββ IMPLEMENTATION_SUMMARY....
β βββ README.md
β βββ file_handler.py
β βββ main.py
β βββ requirements.txt
β βββ swap_health.db
β βββ tensorflow_config.py
β βββ test_endpoints.py
β
βββ config/
β
βββ docs/
β
βββ exercises/
β
βββ fitness/
β
βββ node_modules/
β
βββ scripts/
β
βββ services/
β βββ authService.ts
β βββ cameraService.ts
β βββ cameraServiceExample.ts
β βββ consentService.ts
β βββ databaseService.ts
β βββ exerciseAnalysisService.ts
β βββ exercisePrescriptionService.ts
β βββ fitnessBackendService.ts
β βββ fitnessBackendServiceExample.ts
β βββ huggingFaceService.ts
β βββ mockApiService.ts
β βββ monitoringService.ts
β βββ networkConfig.ts
β βββ networkService.ts
β βββ secureDataService.ts
β βββ simpleFitnessService.ts
β βββ squatAnalysisService.ts
β
βββ types/
β
βββ .env
βββ .gitattributes
βββ App.tsx
βββ README.md
βββ app.json
βββ babel.config.js
βββ index.ts
βββ package-lock.json
βββ package.json
βββ swap_health.db
βββ tsconfig.json
- Real-time Pose Estimation: MediaPipe-powered exercise form analysis
- 25+ Exercise Types: From strength training to therapeutic exercises
- Live Form Feedback: Real-time corrections and rep counting
- Video Analysis: Upload workout videos for detailed analysis
- Progress Tracking: Monitor improvements over time
- Medical Chatbot: Powered by Hugging Face's free medical AI models
- Contextual Responses: Tailored advice based on user medical profile
- Safety-First Design: Always recommends professional medical consultation
- Offline Fallback: Works without internet connection
- Doctor Portal: Specialized dashboard for healthcare providers
- Patient Management: Monitor patient progress and prescribe exercises
- Medical Profiles: Comprehensive health history tracking
- Exercise Prescriptions: Customized workout plans
- React Native: Runs on both iOS and Android
- Expo Framework: Fast development and deployment
- Camera Integration: Real-time video capture and analysis
- Offline Support: Core features work without internet
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β React Native β β FastAPI β β AI Services β
β Mobile App βββββΊβ Backend βββββΊβ (Hugging Face)β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Expo Camera β β SQLite DB β β TensorFlow/ β
β MediaPipe β β File Storage β β MediaPipe β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
- Node.js 16+
- Python 3.8+
- npm/yarn
- iOS/Android development environment
-
Install dependencies:
npm install # or yarn install -
Start the development server:
npm start # or yarn start -
Run on device:
# iOS npm run ios # or yarn ios # Android npm run android # or yarn android
-
Navigate to backend directory:
cd backend -
Install Python dependencies:
pip install -r requirements.txt
-
Start the server:
python main.py
-
Access API documentation:
- Interactive docs: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
- React Native:
0.81.4- Cross-platform mobile development - React:
19.1.0- UI component library - TypeScript:
~5.9.2- Type-safe JavaScript - Expo:
~54.0.13- Development platform - Expo Camera: Camera access and video capture
- React Native Reanimated: Advanced animations
- FastAPI:
0.104.1- Modern web framework - SQLite: Embedded database
- JWT Authentication: Secure user authentication
- BCrypt: Password hashing
- Uvicorn: ASGI server
- MediaPipe:
0.10.7- Pose estimation - OpenCV:
4.8.1.78- Computer vision - TensorFlow: Machine learning framework
- Hugging Face: Free medical AI models
- NumPy: Numerical computing
- Squat - Lower body strength
- Push Up - Upper body strength
- Hammer Curl - Bicep training
- Core Strengthening - Core stability
- Resistance Band Training
- Chair Yoga - Seated yoga poses
- Gentle Stretching - Basic stretching
- Range of Motion - Joint mobility
- Pelvic Tilts - Core flexibility
- Wrist Stretches - Wrist mobility
- Single Leg Balance - Balance training
- Side Step - Lateral movement
- Seated Marching - Seated cardio
- Breathing Exercise - Respiratory training
- Pelvic Floor Exercises - Pelvic health
- Tennis Elbow Exercise - Elbow rehabilitation
- Prenatal Yoga - Pregnancy-safe exercises
The chatbot works out of the box with intelligent fallback responses.
- Create a free Hugging Face account at huggingface.co
- Generate an API token in Settings > Access Tokens
- Add to environment configuration:
// config/environment.ts HUGGING_FACE_API_KEY: 'hf_your_token_here'
- microsoft/DialoGPT-medium - Conversational AI
- microsoft/BioGPT-Large - Medical text generation
- facebook/blenderbot-400M-distill - Alternative conversational AI
- dmis-lab/biobert-base-cased-v1.2 - Medical BERT model
- Patients: Exercise tracking, health monitoring, AI assistant
- Doctors: Patient management, exercise prescriptions, progress monitoring
- Comprehensive health history
- Disease tracking
- Medication management
- Emergency contacts
- Lifestyle factors
- JWT token authentication
- Encrypted data transmission
- Local data storage
- HIPAA-compliant design
- No PHI transmission to external services
POST /auth/register- Register new userPOST /auth/login- User loginGET /auth/me- Get current user info
POST /api/analyze-video- Full video analysisPOST /api/analyze-frame- Real-time frame analysisGET /api/exercise-config/{type}- Exercise configuration
GET /users/profile- Get user profilePUT /users/profile- Update user profile
// Development
API_BASE_URL: 'http://localhost:8000'
ENABLE_POSE_ESTIMATION: true
CAMERA_QUALITY: 'medium'
DEBUG_MODE: true
// Production
API_BASE_URL: 'https://api.swaphealth.com'
CAMERA_QUALITY: 'high'
DEBUG_MODE: falsePOSE_ESTIMATION_V2: Enhanced pose estimationADVANCED_ANALYTICS: Detailed performance metricsPROVIDER_DASHBOARD: Healthcare provider featuresAI_HEALTH_CHATBOT: AI assistant functionality
cd backend
python test_endpoints.py# Unit tests
npm test
# or
yarn test
# Integration tests
npm run test:integration
# or
yarn test:integration- iOS: Build with Xcode and deploy to App Store
- Android: Build APK/AAB and deploy to Google Play Store
- Expo: Use Expo Application Services for automated builds
- Docker: Containerized deployment
- Cloud Providers: AWS, Google Cloud, Azure
- Local: Direct Python deployment
- Change
SECRET_KEYin production - Use HTTPS in production
- Configure CORS for your domain
- Implement rate limiting
- Regular security updates
- Backup database regularly
- Setup Guide - Detailed setup instructions
- Tech Stack - Complete technology overview
- Chatbot Setup - AI assistant configuration
- API Documentation - Interactive API docs
- Fork the repository
- Create a feature branch
- Make changes with tests
- Submit a pull request
This project is licensed under the 0BSD License - see the LICENSE file for details.
Backend Connection Failed
- Verify backend server is running
- Check API_BASE_URL configuration
- Ensure network connectivity
Camera Permissions Denied
- Check iOS Info.plist and Android permissions
- Grant camera permissions in device settings
Video Upload Failed
- Check file size limits (max 100MB)
- Verify video format compatibility
- Check network connection
Pose Analysis Not Working
- Ensure full body is visible in camera
- Check lighting conditions
- Verify MediaPipe installation
- Check this documentation
- Review troubleshooting guides
- Check GitHub issues
- Contact development team
- Advanced exercise analytics
- Wearable device integration
- Telemedicine video calls
- Multi-language support
- Offline exercise library
- Social features and challenges
- Integration with health records
Disclaimer: This application provides general health and fitness information only and should never replace professional medical advice, diagnosis, or treatment. Always consult qualified healthcare providers for medical concerns.
For questions, support, or contributions, please contact the development team or submit an issue on GitHub.
Built with β€οΈ for better health and fitness outcomes.