/GiveApp

MVVM pattern with Paging, LiveData and Room, and Repository with Coroutines, on Play Store

Primary LanguageKotlin

Give v1

                                       

--A Charity API app for helping reach those in need

Androidx, ICS(14) to Android10, latest best practices @ google

MVVM pattern with Paging, LiveData and Room, and Repository pattern with Coroutines are used to page in data for the UI and also back-fill from the network as the user reaches the end of the list or LiveData detects a change. Swipe to refresh is available on the toolbar to get the very latest. A separate Flow branch will be added for integrating it.

Room uses a DataSource.Factory as a positional data source and the Paging Boundary Callback API to get notified when the Paging library consumes the available local data. NetworkState implementation keeps track of network status.

Cached content is always available on the device and the user will still have a good experience even if the network is slow / unavailable ---> OFFLINE_MODE! Glide caches images as long as they are initially loaded.

Libraries