Overview of Android Architecture Samples
mainThis repository contains multiple samples showcasing different architectural approaches to Android development. Each sample implements a simple TODO app to demonstrate specific design decisions, testing scenarios, and architectural patterns.
This specific branch implements:
- UI: Built with Jetpack Compose using a single-activity architecture and Navigation Compose.
- Presentation Layer: Uses a Compose screen (View) and a ViewModel per screen/feature.
- Asynchronous Operations: Reactive UIs powered by Kotlin Flow and Coroutines.
- Data Layer: Uses a Repository pattern with two data sources (local Room database and a fake remote source).
- Dependency Injection: Managed via Hilt.
- Product Flavors: Includes
mockandprodflavors to facilitate development and testing. - Testing: Includes unit, integration, and end-to-end (e2e) tests, including shared tests for emulators/devices.