Your Ultimate Workout Companion for Strength Training
Forge is a powerful mobile app built with Flutter for tracking workout progress, analyzing strength gains, and optimizing training programs. Designed specifically for powerlifters, street lifters, and armwrestlers.
Visit our documentation site for:
- Detailed analytics formulas
- Technical documentation
- Contributing guidelines
- User guides and tutorials
- Advanced Analytics - Track progress with strength coefficient, volume, frequency, and consistency metrics
- Specialized Programs - Pre-built programs for Powerlifting, Street Lifting, and Armwrestling
- Smart Calendar - Visual workout tracking with streaks and history
- Body Weight Tracking - Monitor weight changes over time with complete history
- Personal Records - Track 1RM and compare with world records
- Customizable UI - Personalize with custom avatars, themes, and colors
- Cross-Platform - Works on Android and iOS
- Flutter SDK 3.6.2 or higher
- Dart SDK
- Android Studio / Xcode (for mobile development)
- Firebase project (optional, for authentication features)
# Clone the repository
git clone https://github.com/Andezion/Forge
cd Forge
# Install dependencies
flutter pub get
# Run the app
flutter run- Framework: Flutter 3.6.2+
- Language: Dart
- State Management: Provider 6.0.5
- Backend: Firebase (Auth, Firestore)
- Local Storage: SharedPreferences
- Charts: FL Chart 0.69.2
- Calendar: Table Calendar 3.0.9
Forge uses scientifically-backed formulas to calculate your progress:
Coefficient = (Σ(max_weight / first_weight) / exercise_count) × 100
- 100 = Baseline
- 150 = 50% stronger overall
- 200 = Doubled your strength
lib/
├── constants/ # App-wide constants (colors, strings, styles)
├── models/ # Data models (Exercise, Workout, WorkoutHistory)
├── screens/ # UI screens
├── services/ # Business logic (DataManager, Analytics, Auth)
└── main.dart # App entry point
We welcome contributions! Please read our Contributing Guide to get started.
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature - Commit changes:
git commit -m "feat: your feature description" - Push to branch:
git push origin feature/your-feature - Open a Pull Request
- Follow Dart Style Guide
- Run
flutter format .before committing - Run
flutter analyzeto check for issues - Write tests for new features
# Run all tests
flutter test
# Run with coverage
flutter test --coverage(Add screenshots here once available)
- Cloud sync across devices
- AI-powered form check
- Social features (friends, shared workouts)
- Global leaderboards
- Wear OS / Apple Watch support
- Advanced analytics (predicted 1RM, deload recommendations)
- Exercise video library
This project is licensed under the MIT License
- Flutter team for the amazing framework
- Firebase for backend services
- All contributors and supporters
Built with 🔥 using Flutter & Firebase