Skip to content

Photo Gallery app for Android using the Unsplash API & the Paging library

Notifications You must be signed in to change notification settings

akueisara/photo-gallery-challenge

Repository files navigation

Photo Gallery Challenge

A simple photo gallery app for Android

  • Fetches images from Unsplash.com via their API
  • Written in Kotlin
  • MVVM Architecture
  • Uses Retrofit2, OkHTTP3, Moshi & Glide & Timber libraries
  • Offline viewing support via a local database built with Room
  • Limited unit testing (mostly local)

Screenshots:

The app displays images in two layouts

  • Full-width or Grid tiles

Supports limited offline viewing by using a local database to store image URLS and metadata

  • Images which are still in Glide's cache will be displayed
  • Prompt for the user to reconnect

Installation:

The app needs to be initialized with an Unsplash API key. You can generate a new API key by registering an account and following the instructions at https://unsplash.com/developers .

Once you have your API key, insert it into the ./photo-gallery-challenge/keystore.properties file:

example: UNSPLASH_API_ACCESS_KEY = "456789876545678909876543"

Compile and run the app via Android Studio.

For convenience, there is pre-compiled APK also included in the release page

Roadmap for improvements:

  • Add more local and instrumented unit tests
  • Implement a search bar
  • 'Like' / 'Unlike' or 'add to favorites' function

Credits:

Icons made by Google from www.flaticon.com

About

Photo Gallery app for Android using the Unsplash API & the Paging library

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published