Skip to content

Showcase of multi-modular Android MVVM architectures (Layered Architecture and Clean Architecture) 🏛 to developing clean, testable and scalable Android Apps 📱. MVVM, LiveData, Retrofit, Coroutines, Hilt Dependency Injection, MockK Unit Tests.

License

davidepanidev/android-multimodule-architecture-concepts

Repository files navigation

Android Multimodule Architecture Concepts

Android Multimodule Architecture Concepts is a project to showcase different architectural approaches to developing multi-modular Android apps.

The multi-module architecture proposed consists of 3 different layers:

  • Presentation layer: contains all the Android UI framework components (i.e. Activities, Fragments, ViewModels...) and the related resources (i.e. images, strings...).
  • Domain layer: contains the platform-independent business logic and models.
  • Data layer: contains the repositories, the data source api implementations and the corresponding api-specific models.

These layers are implemented using 3 different modules to increase the decoupling and the separation of concerns. The dependencies between the modules are set in order to make the data layer's classes completely invisible to the presentation layer's ones and vice versa.

About

Showcase of multi-modular Android MVVM architectures (Layered Architecture and Clean Architecture) 🏛 to developing clean, testable and scalable Android Apps 📱. MVVM, LiveData, Retrofit, Coroutines, Hilt Dependency Injection, MockK Unit Tests.

Topics

Resources

License

Stars

Watchers

Forks

Languages