Skip to content

alexymumo/TodoApp

Repository files navigation

TodoApp

  • An android app to demonstrate using Room Jetpack component and make a simple note application
  • It is build using MVVM architecture pattern and Jetpack components

Minimum Api supported: 21 [Supports Over 87% Devices](https://developer.android.com/about/dashboards) Build System: [Gradle](https://gradle.org/)

Table of Contents


Prerequisite

  • To run these application your need the following tools
  • Android Studio
  • Clone the repo here clone or fork

## Architecture - The app is build with MVVM architecture to allow separation of concerns to allow data not to be destroyed over configuration changes.

## Introduction - Room provides abstraction layer over SQLite to allow fluent database access - Room has three main components: * Entity - represents tables in the database. Annotated with @Entity * Data Access Objects(Dao) - A mapping of SQL queries to functions. Annotated with @Dao * Room Database - Acts as the main access point to the underlying SQLite database.

Libraries

  • Navigation Components - provides simple navigation across the app
  • Hilt - Hilt is a dependency injection library for Android that reduces the boilerplate of doing manual dependency injection in your project.
  • ViewModel - Manage UI related data in a lifecycle concious way
  • View Binding - Jetpack library for binding with views
  • kotlinx.coroutines - Library support for coroutines.
  • Material Design - Build awesome beautiful UIs.
  • LiveData - Lifecycle aware.
  • Timber - Logger with small and extensible API which provides on top normal Android normal Log class
  • ColorPicker - Android colorpicker for getting colors from any images by tapping on the desired color.

Screenshots