Skip to content

tonisives/tt-github-browser

Repository files navigation

Github Browser

This is the sample project for the Android App Architecture blog post.

It follows the Android app architecture guidelines by implementing login and browsing of repositories via Github API.

Its purpose is to be a skeleton app when starting a new project.

preview

Table of contents

Requirements

  • Android 5.0 Lollipop or higher.
  • Android Studio 3.5

Setup

  • Create a GitHub personal access token with at least repo read access here
  • Run LoginActivity.kt
  • Enter your username and personal access token to see the repo list.

Architecture Components

  • MVVM pattern: ViewModels are used from androidx lifecycle packages. View reads LiveData from the ViewModel.
  • Koin dependency injection
  • Room database
  • Volley network client

Test coverage

  • Instrumentation tests using MockWebServer assure that login and repo list views will be visible to the user.
  • Unit tests test that repositories read, fetch and store data.

Run tests

./gradlew test && ./gradlew cAT

Contributing

Please make a pull request

License

MIT

About

Sample app following Android app architecture guidelines

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages