Skip to content

Latest commit

 

History

History
48 lines (29 loc) · 2.27 KB

README.md

File metadata and controls

48 lines (29 loc) · 2.27 KB

Base Android Project using MVVM + Clean Architecture

  • In this repository, i want to talk about how to build a base project using MVVM + Clean Architecture in Android. Although there are many ways to build the base project, i hope my approach can help you. Besides, i also hope you contribute your opinion to make this repository better.
  • For those who don't know what is the Clean Architecture, let read this article: Clean Architecture

Project structure

The project is divided 4 main modules:

  • Core module: Include BaseActivity, BaseFragment, BaseViewModel, BaseRecyclerView, extension functions and some utils such as: ErrorUtils, LocaleHelper,...
  • Data module: Corresponds to Data layer. It include local data source and remote data source
  • Domain module: Corresponds to Domain layer. It include some folders such as: mapper, domain model, repository and use case
  • App module: Corresponds to Presentation layer. It include features of application. Each Activity/Fragment will inherit BaseActivity/BaseFragment class, Viewmodel inherit BaseViewModel

Library


API


Example

I built a simple app to implement this base project. My application has 2 main features: search language in dictionary and change language between Vietnamese and English


Conclusion

One more time, thank you for viewing my repository. If you have any ideas, leave it in the comments section.

Best regards.