Foosball Tracker

Kotlin1_6 MVVM JetpackCompose RxJava2 Hilt RoomDB LiveData



An app that helps you keep track of your Foosball matches!


drawer     leaderboard     match_dialog match_history     swipe_dismiss leaderboard_land     match_history_land


  • Able to add Match ✔️
  • Able to edit Match ✔️
  • Able to delete Match ✔️
  • Navigate between screens with Compose Navigation ✔️
  • Reactive programming with RxJava2 + LiveData ✔️
  • Persist Data with Room DB ✔️
  • Clean Architecture ✔️
  • Dependency Injection with Hilt ✔️
  • Supports both Portrait and Landscape orientation ✔️

Possible ways to improve App

  • Able to sort Leaderboard rankings by specific criteria (total matches playered, matches won, win %, etc.)
  • Able to filter results (show only matches played in last 7 days, 30 days, etc.)
  • Use Kotlin Flows instead of RxJava + LiveData (haha, just kidding ?)


View Github