Skip to content

Repository files navigation

CleanArc

This project is a sample Android application to demonstrate a modern, clean architecture approach.

Architecture

This project follows the principles of Clean Architecture. The codebase is separated into layers to achieve separation of concerns, making it more scalable, maintainable, and testable. The presentation layer uses the Model-View-ViewModel (MVVM) pattern.

The main layers are:

  • Presentation (UI): Built with Jetpack Compose. Responsible for displaying the UI and handling user interactions. ViewModels are used to manage UI state and expose data to the Composables.
  • Domain: This layer contains the core business logic and use cases.
  • Data: Responsible for providing data to the application. It uses the Repository Pattern to abstract data sources (network or local).

Tech Stack & Libraries

  • Kotlin: First-party and official programming language for Android development.
  • Jetpack Compose: Android’s modern toolkit for building native UI.
  • Koin: A pragmatic and lightweight dependency injection framework for Kotlin.
  • Retrofit: A type-safe HTTP client for Android and Java.
  • Coil: An image loading library for Android backed by Kotlin Coroutines.
  • Android Architecture Components:
    • Lifecycle: Manages UI component lifecycle events.
    • ViewModel: Stores UI-related data that isn't destroyed on UI component recreation.

How to Build

  1. Clone the repository.
  2. Open the project in Android Studio.
  3. Let Gradle sync the dependencies.
  4. Build and run the application.

About

CleanArc sample

Resources

Stars

11 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages