GitTrendingCompose

A git repositories browsing app with offline and markdown support written in Compose with Material 3.

APACHE-2.0 License

Stars
0
Committers
1

Git Trending Repos

A demo app displaying the trending git repositories, sorted by the number of stars descending, and for displaying the details of repositories.

Made using the latest Android development stack and architectural and UI development patterns, including Jetpack Compose and Material Design 3.

The app will load pages automatically once the user scrolls far enough (close enough to the last item) and supports offline mode and a togglable dark mode setting.

Partly intended as a comparison case study versus the Legacy XML Views implementation.

Video

https://github.com/oblakr24/GitTrendingCompose/assets/32245831/eb864a02-b4ad-41b5-afba-5e4b1f3d4b80

Features

  1. Listing trending repositories: Trending repositories are listed in an infinitely scrollable list, with pages loaded dynamically. Scroll to-refresh to refresh the data.

  2. Repository details: The repository can be opened to reveal the details and the rendered readme file markdown content.

  3. Offline mode: The repositories are stored in a database for offline use and to make fewer requests when the data is not stale.

  4. Dark mode: Toggle to override system settings. When toggled, the preference is persisted.

Technologies

This app is made using:

  • Jetpack Compose for UI with Material 3
  • A mix of MVVM/MVI using Molecule for reactive state construction with Coroutines/Flows
  • Room and Datastore for data and preferences persistence and offline support
  • Standardized design and typography to match Material 3 and easy customization

Stack:

Screenshots

Trending Repositories

Repository Details