Skip to content

Latest commit

 

History

History
54 lines (37 loc) · 2.18 KB

README.md

File metadata and controls

54 lines (37 loc) · 2.18 KB

Android Architecture : base-mvp

Inspiration mostly from the good works of Mindorks Open Source Project. But this app is tweaked a little on the navigation front and also houses a few more features, compared to the original app.

This repo is a sample application that implements MVP architecture using RxJava2, Dagger2, Retrofit2, Room and Butterknife. This uses Retrofit and Room library for network calls and database operations respectively. (Original App uses FastAndroidNetworking and GreenDao) Another highlight is that this repo also has Data Persistency unlike the original app.

Topics

What does this app do?

To sum up in one line, this app shows news feed(Open Source codes and Developer Blogs) to the consumer. Now, the idea is essentially the same but the manner in which it is served to the Consumer, differs(precisely 3).

Quick Glimpse

Home Screen Feed Screen Blog Details Screen Open Source Details Screen

Naive Attempt at Animated Vector Drawable

Chrome

APIs and Architectures Used

  1. Model View Presenter Architecture
  2. RxJava/RxAndroid 2 for concurrency
  3. Dagger2 for managing the dependency tree and also for dependency injection
  4. Room library from Google's Architecture Components, for database operation
  5. Retrofit library for network calls
  6. ButterKnife for View Injections
  7. Glide for Image Loading

I'm also looking at adding the following Libraries for future iterations:

  1. LeakCanary
  2. Mockito
  3. JUnit
  4. Bottom Sheets
  5. Shared Element Transition and Content Transition

Library reference resources

  1. RxJava2: https://blog.kaush.co/2017/06/21/rxjava1-rxjava2-migration-understanding-changes/