5 Awesome Open-source Android Kotlin Apps with MVVM, Dagger, Coroutines, Retrofit, and Room!
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
andDomain
.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.
Thank you to the authors who contributed to Open-source!
Find more open-source projects at:
Find us at:
GitHub:
YouTube:
Twitter: https://twitter.com/androiddevnotes
Instagram: https://www.instagram.com/androiddevnotes
Discord: https://discord.gg/HqTbjss
Contributions:
Contributions and Pull requests are welcomed at https://github.com/androiddevnotes repositories!
🐣