Wallpaper app made using Hilt, Retrofit, Room, Navigation Components, MVI, Coroutines, Flows, ViewModel, LiveData, Datastore Preference.
- The app fetches pictures from Unsplash showing them to the user in a scrolling list.
- The list of pictures is cached in the local database and gets refreshed every 10 minutes.
- From the bottom app bar the user will be able to sort the list of pictures and tapping on the search icon will direct them to a new screen where they can make custom searches.
- Always from the bottom app bar, tapping on the setting icon will open up a bottom sheet dialog where the user can change the app theme and get some info from the about section.
- Tapping on one of the picture will open a details screen with additional information where the user will be able to download or setting the picture as a wallpaper.
- The app handles error cases showing appropriate messages to the user.
The app uses Unsplash API. You can get an API key signing up here and set it in gradle.properties.
- App icon from Endlessicons.
- Ghosts Icon from Flaticon.