- Display dogs previously save in the api
- Set dogs as favorite
- Display favorite dogs
- Register
- Login
- Logout
- Scan dog with camera x
- Dog detail
🏃 For run the app just clone the repository and execute the app on Android Studio.
- Use phones with Android Api 23+
- Having an internet connection
- Kotlin based, Coroutines + Flow for asynchronous.
- Coroutines
- Clean architecture (Domain, Data, Presentation)
- MVVM
- Repository pattern
- StateFlow
- Navigation component
- Dagger Hilt (Dependency injection)
- Unit testing (Truth by google, coroutines tests)
- Moshi - A modern JSON library for Kotlin and Java.
- Retrofit2 & OkHttp3 - Construct the REST APIs.
- Data store
- Camera X
- Permissions
- Coil images
Home | Detail | Favorite | Log in | Sign in | Splash |
---|---|---|---|---|---|
The application is built using Clean Architeture pattern based on Architecture Components on Android. The application is divided into three layers:
https://user-images.githubusercontent.com/24237865/77502018-f7d36000-6e9c-11ea-92b0-1097240c8689.png
- Domain: This layer contains the business logic of the application, here we define the data models and the use cases.
- Data: This layer contains the data layer of the application. It contains the database, network and the repository implementation.
- UI: This layer contains the presentation layer of the application like fragment, activity, viewmodel etc.
Bikcodeh