About this project

GymApp is a cross-platform workout tracker covering Android, iOS, browser, and Garmin devices, with an optional cloud backend. Its stated goal is to combine workout planning, live set tracking, progress analysis, and wearable sync in one experience, while keeping core training usable offline. Platform coverage, as described in the README: - Android: built with Kotlin, Jetpack Compose, and Room; distributed as a production APK and a Google Play AAB. - iOS: built with SwiftUI, targeting iOS 17+; source and a universal Simulator build are provided, but no App Store IPA is published yet. - Browser: a full offline-capable workout application with shared-workout handoff, privacy, and support pages, live at gymapptracker.com. - Garmin: Connect IQ 3.2+, shipped as a signed Connect IQ Store upload package. - Cloud: Supabase, used for optional account sync and a Garmin plan queue. Feature highlights listed by the project include history-aware Smart Coach and Smart Plan recommendations, fast workout logging with reusable templates and favorite exercises, post-workout analytics with comparable-session and Garmin data, exercise discovery with frequency sorting and muscle-group mapping, plus profile, backups, redacted diagnostics, missions, ranks, and achievements. Accounts can be local and offline-first, with authenticated cloud sync as an opt-in addition. The mobile interface and public website are available in English, Ukrainian, and Russian. Android and iOS support light and dark appearance. Downloads are published through GitHub releases, which include platform packages along with BUILD-INFO.txt and SHA256SUMS.txt for verification. The README notes that store upload packages are not interchangeable: APK for direct Android installation, AAB for Google Play, and IQ package for Garmin Connect IQ; the iOS Simulator archive is not an App Store IPA. On privacy and security, the project states that core workouts can remain local, cloud login and synchronization are optional, private backups are kept separate from redacted diagnostics and support reports, and release assets are checked for identity, signing, contents, and checksums. Vulnerabilities should be reported through a private security advisory rather than a public issue, and real user data, credentials, signing material, or private backups should never be attached. GymApp is released under the Apache License 2.0.