App uses tech stack such as MVVM, and Navigation Graph, The app uses the following frameworks and libraries:

  • Android Architecture Components (e.g., Flow, LiveData, ViewModel)

  • Kotlin Coroutines (for asynchronous programming)

  • Proto DataStore (for managing data in a consistent way across multiple screens in an app)

Kotlin, Coroutines, Flow, LiveData

Dependency Injection Dagger hilt is used for dependency injection.

  • ViewModel are classes that contain the data required to render a view. In this app, the ViewModel is responsible for providing data to screens.

  • Navigation Graphs (and ViewModels) A navigation graph is a tree structure in which each node represents a screen in your app and each edge represents an action that can transition from one node to another (e.g., tap on Link 1). In this app, we use Navigation Components from Android Architecture Components

-MVVM architecture -MVVM (Model-View-ViewModel) is a software design pattern for developing applications in which the user interface is separated from the application’s business logic. In this approach, data and behavior are stored in two distinct classes: models and view models. Models represent the state of your application while view models contain properties that can be bound to views. DarkMode.


View Github