Simple app that shows how to architect an android app in a clean architecture with kotlin coroutines. It simply shows a list of photo that is fetched from unsplash api
-
DataBinding Declaratively bind observable data to UI elements.
-
Lifecycle Create a UI that automatically responds to lifecycle events.
-
LiveData Build data objects that notify views when the underlying database changes.
-
ViewModel Store UI-related data that isn't destroyed on app rotations. Easily schedule asynchronous tasks for optimal execution.
- Glide An image loading and caching library for Android focused on smooth scrolling.
-
Retrofit2 Type-safe HTTP client for Android and Java by Square, Inc.
-
OkHttp An HTTP+HTTP/2 client for Android and Java applications.
- Kotlin Coroutines Coroutines is a rich library for coroutines developed by JetBrains. It contains a number of high-level coroutine-enabled primitives that this guide covers, including launch, async and others.
- Koin A pragmatic lightweight dependency injection framework for Kotlin developers.
- Implement data caching