Used Room Database and Followed MVVM Architecture Pattern to build the app

Specs / Open-source libraries:

  • Minimum SDK 21, but AppCompat is used all the way ?
  • Kotlin all new modules starting from 2.5.3 will be written in #Kotlin.
  • Room Database a part of the Android Architecture components which provides an abstraction layer over SQLite
  • MVVM the architecture pattern used in the app (Model-View-ViewModel), that incorporates the Android Architecture Components
  • ViewModel for designed to store and manage UI-related data in a lifecycle conscious way.
  • LiveData for observable data
  • ViewBinding for easily interacts with views


Create New Note Update a Note Delete a Note

N.B: Apply Plugins and Dependencies

  • Apply these plugins

apply plugin: 'kotlin-parcelize'
apply plugin: 'kotlin-kapt'
apply plugin: "androidx.navigation.safeargs.kotlin"
  • Add these dependencies

implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
implementation ""
kapt ""
implementation ""
kapt ""
  • Add this into your project build.gradle file
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.3.5"


View Github