An Android app for analyzing running form using ML-powered pose detection.
- Camera & Gallery Support - Take a photo or select from gallery
- Image Cropping - Crop images to focus on the subject
- Automatic Pose Detection - Uses Google ML Kit to detect body pose
- Interactive Skeleton Overlay - Drag joints to fine-tune positions
- Magnifier Loupe - Precision crosshair when adjusting joints
- Segment Locking - Lock body proportions while adjusting pose angles
- Pinch to Zoom - Zoom in for precise adjustments
- Save & Load Analyses - Persist analyses with athlete names for later review
- Search Saved Analyses - Filter saved analyses by athlete name
- Take or select a photo of someone running
- The app automatically detects the pose and overlays a stick figure
- Drag any joint to adjust its position
- Use the lock icon to maintain body segment lengths while rotating joints
- Use the refresh icon to re-detect the original pose
- Save the analysis with an athlete name for future reference
- Access saved analyses from the home screen
- Flutter - Cross-platform UI framework
- Google ML Kit - On-device pose detection (33 landmarks)
- Riverpod - State management
- Freezed - Immutable data models
- Android device (ML Kit pose detection requires Android/iOS)
- Camera permission (for taking photos)
- Storage permission (for gallery access)
# Install dependencies
flutter pub get
# Generate freezed models
dart run build_runner build
# Run on connected device
flutter run# Build release APK
flutter build apk --release
# APK location: build/app/outputs/flutter-apk/app-release.apk