An app to track your workout quality



This app helps you track your workout.

  • Start time
  • End time
  • Quality
  • Time spent

The ‘Start’ button will start tracking your workout for the day. When you click on ‘Stop’ button, a screen will appear where you can select the quality of your workout and the end time is recorded.

All your workout data is saved in database so that you don’t lose it when the app is closed. Finally the list of workout records are displayed on the main screen in a RecyclerView instead of a static ScrollView.


Screenshot 1
Screenshot 2
Screenshot 3
Screenshot 4
Screenshot 5
Screenshot 6

How to run this project-

  1. Clone this repository in your local environment.
  2. Open the application in Android Studio
  3. Run the app using emulator or connecting to physical device.


This app demonstrates the following techniques:

  • MVVM architecture
  • Fragments and Navigation component within Jetpack
  • Room database
  • DAO
  • Coroutines
  • RecyclerView
  • Refactoring code to make RecyclerView more efficient to maintain and test.
  • Transformation map
  • Data Binding in XML files
  • ViewModel Factory
  • Using Backing Properties to protect MutableLiveData
  • Observable state LiveData variables to trigger navigation


View Github

Leave a Reply

Your email address will not be published. Required fields are marked *