Clean Architecture MVVM Pattern in Android with Use Cases
EN | KO | JA |
---|---|---|
- List of all Pokemon
- View Pokemon card details
- Localization of name attribute
- Offline First
- Clean Architecture
- MVVM (Model-View-ViewModel)
- Repository Pattern
- Multi-Module:
root
--- presentation
--- domain
--- data
--- local
--- remote
- Kotlin
- Coroutines + Flow for aynsc
- Hilt for dependency injection
- Retrofit2 & OkHttp3 for rest api
- Serialization for parse response
- JetPack
- data binding, lifecycle, navigation, paging, room, view model, palette
- Glide for image loading
- Lottie for image animation
The API used in this project is PokéAPI and the base url is as follows:
https://pokeapi.co/api/v2
Method | Endpoint | Usage |
---|---|---|
GET | /pokemon?offset={0}&limit={100} |
Get All Pokemon Information Paging |
GET | /pokemon-species/{bulbasaur} |
Get localized Pokemon names |
GET | /pokemon/{bulbasaur} |
Get Pokemon attribute information |
GET | /type/{1} |
Get localized Pokemon attributes |