GitFlame
Yet another open-source GitHub client app built from scratch using latest and best Android practices.
Tech stack & Open-source libraries
- Minimum SDK level 21
- Kotlin based, Coroutines + Flow for asynchronous.
- Hilt for dependency injection.
- Jetpack
- Lifecycle – dispose of observing data when lifecycle state changes.
- ViewModel – UI related data holder, lifecycle aware.
- Room Persistence – construct the database using the abstract layer.
- Architecture
- MVVM Architecture (View – DataBinding – ViewModel – Model)
- Android DataBinding kit for notifying data changes to UI layers.
- Repository pattern
- Retrofit2 & OkHttp3 – construct the REST APIs.
- Moshi – A modern JSON library for Kotlin and Java.
- Glide, GlidePalette – loading images.
- TransformationLayout – implementing transformation motion animations.
- Timber – A logger with a small, extensible API.
- Material-Components – Material design components for building ripple animation, and CardView.