
Flex
Offline-first workout tracker for strength training and cardio with progress graphs, background rest timers and a local database.





Flex is an offline-first workout tracker for strength training and cardio, released under the MIT licence and built with Flutter. You build plans per weekday, schedule exercises into them, and log each set as either weight and reps or a cardio effort with time and distance. A rest timer runs between sets, on Android as a foreground service with a notification so it keeps counting when the app is in the background or the screen is off. Progress is read from graphs rather than a dashboard: every exercise keeps its own history and chart, and the graph screen can overlay records, merge several exercises into one chart, and show a global progress view across your training.
Everything lives in a local SQLite database through the Drift ORM. There is no account, no server and no sync service, and the Android manifest requests no internet permission at all, so the app cannot phone home even if it wanted to. Data leaves the device only when you ask it to: graphs and plans export to CSV, a full backup is written as a zip archive containing the database and your exercise images, and that archive or a raw SQLite file can be imported back. The interface ships in 27 languages including right-to-left Arabic, Farsi and Urdu, and the theme follows Material You dynamic colour from the system wallpaper. Flex is published on Google Play, F-Droid and the Microsoft Store for Windows, and a Flutter web build runs at brandonp2412.github.io/Flex.
Compared with Hevy, Strong, Fitbod, JEFIT and FitNotes, the difference is ownership rather than features. The commercial trackers keep your routine and history in a vendor account and sell subscriptions or cloud tiers on top of it; Flex keeps the same kind of logging and graphing on the device and asks for nothing. The trade-off is that there is no built-in cloud sync or multi-device hand-off, so moving to a new phone or a second machine means exporting the backup archive and importing it on the other side, and you are responsible for keeping that archive somewhere safe.
Categories:
Tags:
Frequently Asked Questions
Which platforms does Flex run on?
Android through Google Play and F-Droid, Windows through the Microsoft Store, and as a Flutter web build hosted at brandonp2412.github.io/Flex. The repository also builds from source with flutter pub get and flutter run if you would rather compile it yourself.
Does Flex need an account or an internet connection?
Neither. There is no sign-up, and all data is stored in a local SQLite database on the device. The Android build requests no internet permission at all, so the app has no network access, which also means your training history never leaves the phone unless you export it.
How do I back up or move my Flex data to another device?
Flex writes a backup as a zip archive that contains the SQLite database and your exercise images, and the import screen accepts that archive or a plain SQLite file. Graphs and plans can also be exported to CSV for use in a spreadsheet. There is no automatic cloud backup, so you need to copy the archive to a new device yourself.
How do the rest timers behave when the app is in the background?
On Android the timer runs as a foreground service with a notification, so it keeps counting while the screen is off or you switch apps, and can vibrate or play a sound when it finishes. Timer defaults are configurable in settings, and the app asks for notification and battery-optimisation exemptions so the service is not killed mid-set.
Does Flex support cardio and other languages?
Cardio sets are logged alongside strength sets and get their own charts, so a run and a bench press sit in the same training history with different metrics. The interface is translated into 27 languages, including right-to-left Arabic, Farsi and Urdu, and the theme can follow Material You dynamic colour taken from your wallpaper.
Looking for contributors
This project is actively seeking help, join the community!
OpenAltFinder Score
Project Details
Repository details
Updated 11/1/2026, 10:00:57 AM
View RepositorySponsor Flex
Get the latest open source alternatives delivered weekly.
Discover tools that give you freedom from proprietary software.
Compare Flex with
Similar open source alternatives

Stronk
Free, open-source weightlifting tracker for logging lifts, sets and reps — a private, installable web app and alternative to Hevy and Strong.
MyFitnessPal
LiftTrace
LiftTrace is a self-hosted weightlifting tracker that runs in a single Docker container. AGPL-3.0, no telemetry, no cloud sync — your lifting data stays on your own hardware.
Hevy
Ryot
Self-hosted tracker for media consumption and fitness, with imports from Trakt, Goodreads, MyAnimeList, Plex, Jellyfin and more.

wger
Self-hosted workout and fitness manager with nutrition tracking and mobile apps.
MyFitnessPal
SparkyFitness
Self-hosted fitness and health tracker for meals, workouts, water, sleep and body metrics, with family sharing and optional AI coaching.
MyFitnessPalGymMane
Offline gym log for Android with a tap-the-muscle body map, 500+ animated exercises, rest timers, and no internet permission at all.
Hevy


