Skip to content

PhotoFeed-MVVM is an Android application following MVVM architecture (Coroutine + Flow + MutableLiveData + Retrofit + Room + NavGraph ) and using UnsplashApi to show a feed of pictures and detail of each in another view

License

Notifications You must be signed in to change notification settings

arnaultpascual/PhotoFeed-MVVM

Repository files navigation

PhotoFeed-MVVM

LicenseProject Status: Active GitHub release

PhotoFeed-MVVM is an Android application following MVVM architecture (Coroutine + Flow + MutableLiveData + Retrofit + Room + NavGraph ) and using UnsplashApi to show a feed of pictures and detail of each in another view

Functionalities

  • List all Photos of the given feed
  • Switch Grid Style to List Style
  • Show details of a selected picture
  • Pinch to zoom in/out
  • Share the picture on every app installed on the phone that can share pictures
  • Caching database for keeping the app working even if there's network trouble
  • Network error logic for preventing crash and load local database datas
  • Skeleton / Shimmering effect during feed loading for better UX
  • Shared Element between fragment so we can make sweet transitions
  • Local Data First Logic

PhotoFeed-MVVM & Android Versions

​ PhotoFeed-MVVM is compatible with Android API 26 and target API 33.

Tested Android API 26 29 32 33
1.0.0

Screenshots

screenshot screenshot
screenshot screenshot

What's next?

  • Better abstraction with some interfaces
  • UI/Unit test
  • Made some land xml for both fragment and fix the auto switch fragment
  • Perhaps less responsibility in the PhotoFeedListFragment
  • Global management of error with dedicated popup view
  • Add inifinite scrolling with paging requested data

Externals Libraries

Copying

  • Code: you can redistribute it and/or modify it under the terms of the GNU General Public License (GPLv2).

About

PhotoFeed-MVVM is an Android application following MVVM architecture (Coroutine + Flow + MutableLiveData + Retrofit + Room + NavGraph ) and using UnsplashApi to show a feed of pictures and detail of each in another view

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages