/Pokedex_Compose

This Pokedex - Pokemon app is a project that contain and apply the latest Android technologies recommended by Google such as Jetpack Compose, the new way to build the design.

Primary LanguageKotlinApache License 2.0Apache-2.0

Pokedex_Compose

This Pokedex - Pokemon app is a project that contain and apply the latest Android technologies recommended by Google such as Jetpack Compose, the new way to build the design. Also, it contains some other important technologies such as Room Database, KSP, Hilt Dependencies Injection, the new Shared Element Transaction and new Navigation Type Safety.

The Project Contain the following technologies

Kotlin - https://kotlinlang.org/docs/getting-started.html
Jetpack Compose https://developer.android.com/develop/ui/compose
Jetpack Compose Navigation - New Shared Element Transition - https://developer.android.com/develop/ui/compose/animation/shared-elements - https://fvilarino.medium.com/shared-element-transitions-in-jetpack-compose-8f553078101e - https://getstream.io/blog/shared-element-compose/
Retrofit for Network Manager https://square.github.io/retrofit/ - https://github.com/square/retrofit
Room Database https://developer.android.com/training/data-storage/room
Palette (Using the Pokemon Color to paint the Linear Indicator with the same color) - https://developer.android.com/develop/ui/views/graphics/palette-colors
KSP - https://developer.android.com/build/migrate-to-ksp - https://github.com/google/ksp
Coil For Compose - https://coil-kt.github.io/coil/compose/ - https://coil-kt.github.io/coil/ - https://github.com/coil-kt/coil
Hilt Dependencies Injection - https://developer.android.com/training/dependency-injection/hilt-android
New Navigation Type Safety - https://medium.com/androiddevelopers/navigation-compose-meet-type-safety-e081fb3cf2f8

Others

UI State
View Model
Repository
Offline Support
R8 enabled

Examples

Similar project with (Dart Language)

https://github.com/NicosNicolaou16/Pokedex_Flutter

Versioning

Target SDK version: 34
Minimum SDK version: 27
Kotlin version: 2.0.20
Gradle version: 8.6.1

Feeds/Urls/End Point (parsing some data from the response)

(Links References for Ends Points)

https://pokeapi.co/
https://github.com/PokeAPI/sprites (GitHub)

References

https://fvilarino.medium.com/shared-element-transitions-in-jetpack-compose-8f553078101e
https://getstream.io/blog/shared-element-compose/
https://medium.com/androiddevelopers/navigation-compose-meet-type-safety-e081fb3cf2f8
https://dribbble.com/shots/6540871-Pokedex-App# - Get some UI - not completely use it (CHECK THE LINK FOR THE DESIGN)