Skip to content

This is a project using the Github public REST API to showcase an efficient, scalable and clean way to load the most popular Github projects ordered by their number of stars

License

Notifications You must be signed in to change notification settings

gongracr/Popular-GH-repos

Repository files navigation

GH Repositories Loader

This is a demo app to showcase how to display a paged list of public Github projects, sorted by number of stars in descending order using the Github REST API. The app was designed and implemented trying to follow modern Android infrastructure, best development practices like Clean architecture and state of the art technical tools like Compose, Kotlin Flow and Hilt.

Main features 📲

  • Pagination of endless items using androidx paging3 in a list gallery via Remote mediator
  • Detailed screen showing more complete information about a specific Github project
  • Ability to search/filter out projects by name

Building tools 🛠️

Architecture 🏗️

  • MVVM Architecture (Model - ComposableView - ViewModel)
  • Clean architecture (Presentation - Domain - Data)
  • Repository pattern
  • Hilt - dependency injection
  • Full App Modularization. Internal data and domain purposes and responsibilities spread over several modules (core for the business/domain logic, network for interaction with REST api services and persistence for local storage).

About

This is a project using the Github public REST API to showcase an efficient, scalable and clean way to load the most popular Github projects ordered by their number of stars

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages