This app is designed with some concepts, skills and new technologies. The application allows you to obtain all the information fromRecipe API.
- Get recipes from the API and display them in a list.
- Show error screen if you try to recover data and have no network connection.
- Implement Pagination.
- Save all recipes to local storage.
- See the detail of a specific recipe.
- Unit tests for domain, data and presentation layers
- Implement code coverage with Jacoco
🏃 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
- Jetpack compose
- Coroutines
- Clean architecture (Domain, Data, Presentation)
- MVVM
- Repository pattern
- Use cases
- Flow
- StateFlow
- Jetpack navigation
- Retrofit
- Room dabatase (Local storage)
- Pagination
- ViewModel
- Accompanist ( navigation animation)
- Dagger Hilt (Dependency injection)
- Coil (Load images)
- Retrofit (HTTP requests)
- Unit testing (Mockk, Turbine)
- Code coverage (Jacoco)
The application is built using Clean Architeture pattern based on Architecture Components on Android. The application is divided into three layers:
- 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.
- Presentation: This layer contains the presentation layer of the application.
@Codemendozaa