This is a simple video games discovery app showcasing UI using Jetpack Compose and also tests for composable UI.
This application gets all it's data from RAWG API.
To successfully build this application you need an API key from RAWG.
Head on over there and follow the steps to get your key. It's completely free!
Once you get your API key, edit your local.properties
file and add the key as follows:
api.key=YOUR_API_KEY
- Add filter functionality
-
Clean Architecture This app is structured using single module clean architecture
-
MVI Orbit The presentation layer uses mvi pattern
-
Jetpack Compose For creating beautiful screens
-
Compose navigation For navigation in the app
-
Paging 3 For achieving pagination
-
ViewModel The presentation layer uses the viewmodel pattern
-
Hilt For dependency injection
-
Material Icons For icons displayed in app screens
-
Coil For displaying images
-
ExoPlayer For playing videos
-
Full screen ExoPlayer Option to play videos in full screen landscape mode
-
Custom ExoPlayer controls To add custom functionality
-
Coroutines For handling async work
-
Retrofit For networking tasks
-
MockWebServer For API/network testing
-
Mockk For mocking dependencies during testing