Github Search is a simple Android application built to demonstrate use of modern Android development tools.
Install and test latest version by link below π
- Architecture: MVVM (Model View View-Model)
- Navigation Graph
- App is written in Kotlin
- Coroutines (concurrency)
- Kodein-DI - "painless" Dependency Injection
com.koshsu.githubsearch # Root Package
.
βββ application # Custom Application class / Dependency Injection (Kodein)
|
βββ data # Data handling
| βββ database # Room database for local end point
| | βββ dao # Data Access Objects for Room
| | βββ model # Entities and data classes
| βββ network # Retrofit/Github API for remote end point
| | βββ response # Data class that holds search result data
| βββ preference # Shared Preferences Provider
| βββ repository # Single source of data for ViewModels
|
βββ ui # View layer (Activity, Fragments)
β βββ details # Details Screen Fragment (& ViewModel)
β βββ home # Home Screen Fragment
| βββ interfaces # Interfaces for communication between Fragments and Activity
β βββ search # Search Screen Fragment (& ViewModel, Adapter)
|
βββ utils # Kotlin extensions / Utility classes
- Pagination
- Tests