DeviantArt is a small open source project that uses DeviantArt API based on MVVM with clean architecture. It focuses on smooth and beautiful animation.
- Minimum SDK level 21
- Target SDK level 29
- Clean MVVM architecture followed by Android Architecture Blueprints - MVP + Clean Architecture and Google I/O Android App
- Kotlin based.
- Coroutines + Flow for asynchronous.
- Dagger-Hilt for dependency injection.
- Data binding
- JetPack
- LiveData - in viewmodel class, expose state to view.
- ViewModel - keep data survive in orientation change.
- Workmanager - run deferred background.
- Paging 3 - help loadmore data with recyclerview
- Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
- Gson - A modern JSON library for Kotlin and Java.
- Timber - logging.
- Material-Components
- InboxRecyclerView