PhotoListApp demonstrates modern Android development with Coroutines, Coil, ViewModel, ViewBinding and Material Design based on MVVM architecture.
Splash Screen Page | Photo List Page | Photo Detail Page |
The app's functionality includes:
- Fetch a list of images from picsum photos api (https://picsum.photos/) and shows them in RecyclerView.
- When an image is selected from the RecyclerView, the author of the image will load the image along with its height information.
- The app supports SwipeRefreshLayout to refresh RecyclerView content from remote source.
- Minimum SDK level 21
- Kotlin, Android appcompat
- Coroutines for asynchronous operations and Network call .
- Lifecycle for observe Android lifecycles and handle UI states upon the lifecycle changes.
- ViewModel for manage UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
- DataBinding for bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
- Android View Binding
- Retrofit2 for REST API communication.
- Coil for loading images from network.
- Swipe Refresh Layout for refresh RecyclerView content.
- Navigation
PhotoListApp is based on the clean architecture with MVVM(Model - View - View Model) design pattern.
Go to the Releases to download the APK.