Skip to content

masoudkarimi/Todo

Repository files navigation

Todo

The Todo project is a sample Android application designed to demonstrate how to create a multi-module application that is modularized by layer and feature. The application is built using Kotlin, Coroutines, Flow, Hilt, Jetpack Compose, and Room for Database.

The purpose of the project is to provide an example of how to create a modularized Android application that can be easily maintained and scaled. Each feature and layer is encapsulated in a separate module, making it easy to add or remove functionality without affecting other parts of the application.

🛠 Tech Stack & Open Source Libraries

The following technologies are used in this project:

  • Kotlin: A statically-typed programming language for modern multi-platform applications.
  • Coroutines: A lightweight concurrency framework for asynchronous programming in Kotlin.
  • Flow: A reactive stream library for asynchronous programming in Kotlin.
  • Hilt: A dependency injection framework built on top of Dagger 2 for Android.
  • Jetpack Compose: A modern UI toolkit for building native Android UIs.
  • Room: A persistence library that provides an abstraction layer over SQLite for database storage.
  • Version Catalog: Sharing dependency versions between projects

🏛️ Architecture

The application is composed of several modules that depend on each other. Here's a diagram that illustrates the dependencies between the modules:

🤝Contributing

Most of the features are not completed yet, so anyone can contribute and improve this project following the Contributing Guideline.

About

Sample multi-module application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages