1. 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.
- 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
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.
- 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.
- Modularize the application into modules
Domainthe 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.
Are you learning about Open Source Android Apps Java ? Let’s talk about this. I’ve written a book on the topic and I want to share it with more people like you. I’m going to walk you through the writing process of this book, how to use this book, and how to get started writing more books. Before we start, I just want to say thank you for taking the time to read this article and learn more about my open source projects.