Skip to content

Giphy viewer and search for demonstration of an android clean architecture project.

License

Notifications You must be signed in to change notification settings

ba-a/Giphy-AndroidCleanArchitecture

Repository files navigation

Giphy-AndroidCleanArchitecture

Android Clean Architecture

This Repo contains some best practices for current state of the art Android development
(This was written on 03.06.2020)

It uses the giphy developer API to show the latest trending giphys and also contains
a giphy search that will show first 25 results with the feature to share them.

To make it work an api key from https://developers.giphy.com/ is needed. The key needs to be replaced as BuildConfig variable API_KEY in the build.gradle

It is built with Kotlin using:
- Single activity multiple fragments pattern
- MVVM with Repository Pattern(Fragment -> ViewModel -> UseCase -> Repository)
- Uniflow for UI State updates (great library btw: https://github.com/uniflow-kt/uniflow-kt)
- Coroutines for Background work
- NavGraph for navigation
- BottomNav for the BottomBar
- ViewBinding for accessing views
- Koin for dependency injection
- Glide for image/gif loading
- Retrofit + Moshi for API calls
- ViewPager2 with custom PageTransformer
- RecyclerView
- mockk for Unit Testing
- Chucker for analysing network traffic

Short Demo of the app:

About

Giphy viewer and search for demonstration of an android clean architecture project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages