This is a test project that a technical recruiter asked me to do. The object is to build an Android app using the GitHub API
-
Create main screen with list of users from this request https://api.github.com/users List item have to display such data:
- avatar
- login
After click on a user it has to transfer you to screen with user's repositories
-
Create user details screen with user’s repositories from this request https://api.github.com/users/{login}/repos List item have to display such data:
- name
- updated_at
- stargazers_count
- language
After click on a repository it has to transfer you to the repository at github.com 3) Save ll the data in database Data have to be shown in this order: loader → data from database → data from API
Tech stack:
- Jetpack Compose
- Kotlin
- MVVM Architecture
- Kotlin coroutines
- Retrofit
- Dagger 2 or Dagger Hilt
- Single Activity Design Pattern
- Clean Architecture
Dillinger uses a number of open source projects to work properly:
components
Contain all custom reusable composabledata
Contain all model, data source, repository and Roommodel
Contain entitiesrepository
Contain repositories
di
Contain all module for Dependency Injectionnavigation
Contain NavGraph and Screen .network
Retrofit configrepository
Contain repositoryui.theme
theme of apputils
Contain extensionviews
the viewsvm
the viewmodel
You can find the apk here