Given time, best effort to deploy these principles. There are also opportunities to further extract few interfaces (Liskov principle) to improve code quality.
Caching
Android Jetpack caching layer with Paging library, Room DB. Sample PagingMeditor, along with Room generated paging source
Navigation
Android Jetpack navigation layer
Work in progress features
Item
Purpose
Testing
At the time of this writing, it is challenging to use Dagger/Hilt infrastructure to setup testing scaffolding with View based architecture, however once setup up - following tests will be much easier to setup
Roadmap
Item
Purpose
Improve testability
Increase coverage in unit testing layer
Migrate to Compose
Kotlin based declarative UI - not only for Android platform but also easier maintenance and capabilities of UI layer.
Feature: Add a "capture cart"
Author admits he his knowledge of Pokemon capture semantics is lacking however my nephew is an expert
About
Sample application using Android Navigation, Paging with local cache and Remote API.