android/architecture-samples

A collection of samples to discuss and showcase different architectural tools and patterns for Android apps.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 45 minutes ago
Added to GitGenius on February 25th, 2026
Created on February 5th, 2016
Open Issues & Pull Requests: 223 (+0)
Number of forks: 11,861
Total Stargazers: 45,801 (+0)
Total Subscribers: 2,381 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1477.8 days
Mean response time: 1513.0 days
90th percentile: 2707.1 days
Tracked items: 87

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 108
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,779 days
Stale 30+ days: 105
Stale 90+ days: 102

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • question (11)
  • bug (8)
  • enhancement (8)
  • New sample community request (6)
  • invalid (2)
  • New sample (1)
  • duplicate (1)
  • wontfix (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The Android Architecture Samples repository is a collection of reference implementations maintained by Google that demonstrates different architectural approaches for building Android applications. The repository uses Kotlin as its primary language and is organized across multiple branches, each implementing the same TODO application with varying architectural patterns and tooling choices.

The main branch showcases a modern Android development approach built on Jetpack Compose for the user interface, combined with a single-activity architecture using Navigation Compose for screen navigation. The presentation layer follows the MVVM pattern, with each screen or feature having its own ViewModel. The implementation uses Flow and Kotlin coroutines to handle asynchronous operations and create reactive user interfaces. The data layer is structured with a repository pattern that abstracts two data sources: a local Room database and a mock remote data source. The project includes two product flavors, mock and prod, to facilitate development and testing workflows. Dependency injection is handled through Hilt, and the codebase includes comprehensive testing coverage with unit tests, integration tests, and end-to-end tests that can run on emulators or physical devices.

The repository explicitly positions itself as an educational resource rather than a production template or UI showcase. It is designed for intermediate developers and beginners seeking to understand how to structure testable and maintainable applications, while also serving as a quick reference for advanced developers. The TODO application was deliberately chosen as the sample project because it is simple enough to understand quickly but complex enough to illustrate difficult design decisions and testing scenarios.

The repository has received bug reports and questions as its most active issue types.

The repository covers multiple architectural patterns and design approaches, including MVVM, MVI, and clean architecture principles. It serves as a practical guide for implementing Jetpack libraries and best practices in Android development. The samples are designed to be opened directly in Android Studio, making them accessible for developers who want to study the code structure and patterns in a familiar development environment.