Get fit with Flexify. Easily track your gym progression with offline records and seamless graphs.
-
💪 Track gym progress: Log your reps and weights with ease.
-
📵 Offline: Flexify doesn't use the internet at all.
-
📈 Graphs: Visualize your progress over time with intuitive graphs.
-
🏃 Cardio tracking: Record your progress with cardio type.
-
⚙️ Highly customizable: Toggle features on/off, swap between light/dark theme and much more.
-
⏱️ Automatic rest timers: Stay focused with alarms after resting.
Migration from Massive
Gym sets and plans can be imported into Flexify.
If you would like to support this project:
- Bitcoin
bc1qzlte8featxzf7xvtp3rjv7qqtwkgpup8hu85gp
- Monero (XMR)
85tmLfWKbpd8nxQnUY878DDuFjmfcoCFXPWR7XYKLHBSbDZV8wxgoKYUtHtq1kHWJg4m14sdBXhYuUSbxEDA29d19XuREL5
- GitHub sponsor
To get started with Flexify, follow these steps:
-
Clone the Repository: Clone the Flexify repository to your local machine using Git:
git clone --recursive https://github.com/brandonp2412/Flexify flexify
-
Install Dependencies: Navigate to the project directory and install the necessary dependencies:
cd flexify flutter pub get
-
Run the App: Launch the Flexify app on your preferred device or emulator:
flutter run
If you edit any of the models in the lib/database
directory you probably need to create migrations. E.g. assume the version starts at 1
.
- Bump the
schemaVersion
lib/database/database.dart
int get schemaVersion => 2;
- Run database migrations
./scripts/migrate.sh
- Add the migration step
lib/database/database.dart
from1To2: (Migrator m, Schema2 schema) async {
await m.addColumn(schema.myTable, schema.myTable.myColumn);
},
Contributions to Flexify are welcomed and encouraged! Whether you want to report a bug, suggest a feature, or submit a pull request, please feel free to contribute. For major changes, please open an issue first to discuss the proposed changes.
Flexify is licensed under the MIT License.