5 Awesome Open-source Android Kotlin Apps with MVVM, Dagger, Coroutines, Retrofit, and Room!

Android Dev Notes
Android Dev Notes
Published in
4 min readAug 23, 2020

--

Awesome Android Kotlin Apps aims to be the starting point for developers to find an Android app with a particular Tech Stack / Libraries.

Below are the 5 Awesome Open-source Android Kotlin apps with a tech stack combination of Dagger dependency injection, Kotlin Coroutines, MVVM (Model-View-ViewModel) pattern, Retrofit networking library, and the Room persistence library!

1. Instant Weather ⛅

GitHub URL: https://github.com/mayokunthefirst/Instant-Weather

About: Instant Weather fetches data from the OpenWeatherMap API to provide real-time weather information. It also makes use of the Algolia Instant Search service which enables you to search for weather conditions of various locations.

Tech Stack: Dagger, Coroutines, Testing, Retrofit, Room, WorkManager, Paging, Data Binding, Navigation, Algolia Search, LiveData, ViewModel

2. Change Detection

GitHub URL: https://github.com/bernaferrari/ChangeDetection

About: Automatically track website changes on Android in the background.

Use case:

  • The teacher says grades will be published “soon”, but no one knows what “soon” means and you are tired of reloading.
  • You are working with a server and want to know the result from a request, periodically.
  • You are waiting for updates on an Exam, like if something was postponed or updated.
  • You want to monitor the Dagger documentation to see when Thermosiphon’s explanation improves.

Tech Stack: Dagger, Coroutines, RxJava, Retrofit, Room, Firestore, WorkManager, Paging, Data Binding, Navigation, JSoup, js-evaluator-for-android, LiveData, ViewModel

3. TopCorn 🍿

GitHub URL: https://github.com/theapache64/topcorn

About: A minimalistic movie listing app to browse IMDB’s top 250 movies, built to demonstrate MVVM with the latest hot-trending Android development tools.

Tech Stack: Dagger, Coroutines, Testing, Retrofit, Room, LiveData, ViewModel

4. Nekome

GitHub URL: https://github.com/Chesire/Nekome

About: Nekome is an Android application that helps with tracking your anime and manga watch lists. Watch list data is handled by Kitsu.

Features:

  • Track Anime and Manga series progress
  • Quickly update progress on series
  • Search for new series to follow
  • Light and Dark themes

Tech Stack: Dagger, Coroutines, Testing, Retrofit, Room, WorkManager, Navigation, LiveData, ViewModel

5. Rocktly: Rocket launches schedule

GitHub URL: https://github.com/ValterKasper/space-app

About: An android app that shows the time-line of upcoming rocket launches. Showcases architecture of a real android application and usage of some libraries. Application loads data about rocket launches from the server and stores them to the database for off-line usage.

Goals:

  • Modularize the application into modules App and Domain. Domain the module has no android dependencies.
  • Focus on testability with unit tests and UI tests. For UI tests, Espresso library is used with the Robot pattern which allows to create clear and understandable tests.
  • Use kotlin coroutines for asynchronous jobs.

--

--

Android Dev Notes
Android Dev Notes

Android open-source projects, notes, tutorials, and tips and tricks. github.com/androiddevnotes