MysLog is a free, open-source Android application designed for tracking your gym workouts. Built with modern Android development tools, it focuses on simplicity, privacy, and offline functionality.
- 📱 Modern UI – Built with Jetpack Compose & Material Design 3 for a clean, dynamic interface.
- 🏋️ Comprehensive Exercise Database – Access over 870 exercises with filters by muscle, equipment, and custom routines.
- 📊 Full Workout Tracking – Log exercises, sets, weight, and repetitions with detailed session management.
- 📈 Progress Visualization – View charts and statistics for each exercise to track your improvements.
- 🔒 100% Offline & Private – All data is stored locally on your device. No accounts, no ads, no subscriptions.
- ⏱️ Built-in Rest Timer – Customizable timer with notifications to manage your rest periods.
- 🌍 Bilingual Support – Interface available in English and Spanish (exercise database currently in English).
Note
The exercise database is based on the Free Exercise DB project by yuhonas: https://github.com/yuhonas/free-exercise-db/tree/main
The latest APK can be downloaded from the Releases section.
- Clone the repository:
git clone https://github.com/musigatto/MysLog.git
- Open the project in Android Studio (Flamingo or newer recommended).
- Build and run the app on an emulator or physical device.
- Language: Kotlin
- UI Toolkit: Jetpack Compose
- Architecture: MVVM + Repository Pattern
- Local Database: Room
- Dependency Injection: Hilt
- Asynchronous: Kotlin Coroutines & Flow
- Design System: Material Design 3 (Dynamic Color)
MysLog/
├── app/
│ ├── src/main/java/com/myslog/
│ │ ├── core/ # Constants, navigation routes
│ │ ├── db/ # Database entities, DAO, Repository
│ │ ├── di/ # Dependency injection modules
│ │ ├── ui/ # Composable screens & ViewModels
│ │ └── utils/ # Extensions, converters, services
│ └── src/main/res/ # Resources (strings, themes, assets)
Contributions, issues, and feature requests are welcome! If you find a bug or have an idea for improvement, please:
- Check the Issues to see if it's already reported.
- Open a new issue or submit a pull request.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add some AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
This project is licensed under the MIT License – see the LICENSE file for details.
Project Link: https://github.com/musigatto/MysLog
Made with ❤️ for the fitness community. If you find this app useful, consider giving it a ⭐ on GitHub!




