- An Android application that shows a vertical feed.
- Tapping on a Feed item takes the user to the Post Detail screen.
- Post Details show the full post along with user comments.
- Feeds are stored in a Database for Offline Mode.
- Each user has a unique Avatar associated with it.
- Written purely in Kotlin.
- Built on MVP architecture to facilitate separation of business logic & testability.
- Using the latest libraries like Architecture Components & Dagger for speedy caching and Dependency Injection.
- Mockito for testing the Presenters and ViewModel Transformers.
- Abstraction layers & Proxy patterns for Data / APIs for encapsulation.
-
Support: AppCompat, Design, CardView, ConstraintLayout
-
Database: Room
-
API and HTTP Calls: Retrofit & OkHttp3
-
Dependency Injection: Dagger2
-
Images: Glide & CircleImageView
-
Events: EventBus
-
Architecture Components: Lifecycle, ViewModel
- Use ./gradlew on the Project Root to build.
- Keystore & Signing Config has been included for convenience
- Use either
./gradlew assembleDebug
or./gradlew assembleRelease