Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blundell/polkiemon
https://github.com/blundell/polkiemon
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/blundell/polkiemon
- Owner: blundell
- Created: 2023-03-07T13:41:54.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-03T10:43:16.000Z (9 months ago)
- Last Synced: 2024-04-03T11:37:44.674Z (9 months ago)
- Language: Kotlin
- Size: 12.7 MB
- Stars: 17
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Functionality
### Required
1. When the application starts, load and show a paginated Pokemon list, obtained from
the endpoint. (Show name and image for each Pokemon) DONE
2. When a Pokemon is selected, show a detailed view. DONE
3. Give an option to refresh the list. DONE
4. Show error info if the list cannot be loaded (eg: no network) DONE### Bonus
1. Manage configuration changes, ideally without reloading the list. DONE
2. Add an offline mechanism so the application can work even with no network. DONE
3. Add some animations (fade in/fade out animations, etc) DONE
4. Add an option to search for a Pokemon by name.### Thoughts
- Search is not implemented
- I have not done landscape designs, you get less details in landscape.
- There are some unhandled edge cases at the very end of the full list of Pokemon
- There is no modularisation at this point, but creating a modular architecture would help separate concerns and have more people working in parallelSome good starting places for the app are here:
- https://github.com/blundell/polkiemon/tree/main/app/src/main/java/com/blundell/polkiemon
- https://github.com/blundell/polkiemon/blob/main/app/src/main/java/com/blundell/polkiemon/ui/list/ListPokemonScreen.kt
- https://github.com/blundell/polkiemon/blob/main/app/src/main/java/com/blundell/polkiemon/details/PokemonDetailsViewModel.ktHere is the app in action
| List | Details | Offline |
| --- | --- | --- |
|![](gifs/list-scroll.gif)|![](gifs/details.gif)|![](gifs/offline.gif)|