- Visualize video in movie/show detail for trailers and teasers
- Handle de gradle dependencies, add a dependencies file to centralize the dependencies
- Improve the error handling, with personalized exceptions
- App crashes in the search when there is no internet connection, Add a message to indicate there is no network
- It crashes in the detail without internet too if the movie has not been visualized before, Add a message too
- Improve the UX and UI, fonts, sizes, theme, skeleton
- There is no UI testing, add it. Maybe with Expresso
- Decrease the minSDK it is in the API 26, test if it works in previous versions
TteMovieDB is a simple aplication that consumes the services provided by the TheMovieDB open API
The project was developed in Android Native with Kotlin using:
-
Clean Architecture with 4 layers
-
Presentation: A layer that interacts with the UI.
-
Domain: Contains the business logic of the app, models and usecases.
-
Data: Abstract definition of all the data sources.
-
Framework: Implements interaction with the Android SDK and provides concrete implementations for the data layer.
-
Each module has its unit tests
- Model-View-ViewModel as pattern for the presentation layer
- Repository pattern for the data layer
- Coroutines with Flow for the background tasks
- Dagger Hilt for Dependency Injection
- Retrofit to consume the API Rest+
- Room to persist data locally
- Kotlin v1.5.21
- Dagger Hilt v2.40.5
- Retrofit2 v2.9.0
- Coroutines v1.5.0
- Glide v4.12.0
- Android Navigation v2.3.5
- Safe Args v2.3.5
- MockK v1.12.1
- Minimum version: Android 8 - API level 26