Android client for GitHub personal account, with shared module for cross-platform code /Kotlin Multiplatform Mobile.
It's my previous app https://github.com/maiow/GitTest migration to KMM. Goal was to move data layer (storage and logic of working with the network) to the shared module.
What's been changed:
- SharedPrefs -> Multiplatform-Settings with platform realizations
- Retrofit -> Ktor
- Hilt -> Koin
- added Napier for logging.
Splash Screen (Splash Screen API used). Auth screen: In-app checks of authorization token, and handling errors came from GitHub server as per tech reqs:
Skipping Auth screen if already logged before (saving encrypted token in encrypted shared prefs):
Repositories list screen, click on item, repository info screen, logout:
Handling No Readme case error from GitHub server:
Lost Network connection case and retry:
Empty repos case: