Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/brandonp2412/Flexify

Track your gym progress - Completely offline!
https://github.com/brandonp2412/Flexify

Last synced: 7 days ago
JSON representation

Track your gym progress - Completely offline!

Awesome Lists containing this project

README

        

# Flexify

Get fit with Flexify. Easily track your gym progression with offline records and seamless graphs.


GitHub Release
Release downloads
GitHub repo size

## Features

- 💪 **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 types.
- ⚙️ **Highly customizable**: Toggle features on/off, swap between light/dark theme and much more.
- ⏱️ **Automatic rest timers**: Stay focused with alarms after resting.

Get it on Google PlayGet it on F-Droid


Download on the App Store

## Screenshots










## Migration from [Massive](https://github.com/brandonp2412/Massive)

Gym sets and plans can be imported into Flexify.




## Donations

If you would like to support this project:
- Bitcoin `bc1qzlte8featxzf7xvtp3rjv7qqtwkgpup8hu85gp`
- Monero (XMR) `85tmLfWKbpd8nxQnUY878DDuFjmfcoCFXPWR7XYKLHBSbDZV8wxgoKYUtHtq1kHWJg4m14sdBXhYuUSbxEDA29d19XuREL5`
- [GitHub sponsor](https://github.com/sponsors/brandonp2412)

## Getting Started

To get started with Flexify, follow these steps:

1. **Clone the Repository**: Clone the Flexify repository to your local machine using Git:

```bash
git clone --recursive https://github.com/brandonp2412/Flexify flexify
```

2. **Install Dependencies**: Navigate to the project directory and install the necessary dependencies:

```bash
cd flexify
flutter pub get
```

3. **Run the App**: Launch the Flexify app on your preferred device or emulator:

```bash
flutter run
```

## Migrations

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`.

1. Bump the `schemaVersion`
`lib/database/database.dart`
```dart
int get schemaVersion => 2;
```

2. Run database migrations
```sh
./scripts/migrate.sh
```

3. Add the migration step
`lib/database/database.dart`
```dart
from1To2: (Migrator m, Schema2 schema) async {
await m.addColumn(schema.myTable, schema.myTable.myColumn);
},
```

## Contributing

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.

## License

Flexify is licensed under the [MIT License](LICENSE.md).