- Retrofit as HTTP client
- Glide for image downloaiding and display
- RxJava to efficiently handle async network calls and employ reactive pattern
- Dagger for dependency injection
- Databinding
- MVVM (Mode-View-ViewModel)
- Basic JUnit tests are implemented.
- I have used EndlessRecyclerViewScrollListener for pagination as it is robust and very simple to use
I have experimented with other Image loading libraries: Picasso, Volly and Fresco, but Glide seems to be performing best amongst all due to it's well optimized Cache mechanism.
Search | Full screen image | Details screen |
---|---|---|