/my-notes-mvvm-retrofit

A simple note taking app build in kotlin, uses retrofit as REST Client, follows android mvvm architecture for data flow and single activity architecture for UI.

Primary LanguageKotlin

My Notes

A simple note taking android app build in kotlin. It uses retrofit as REST Client, follows android mvvm architecture for data flow and single activity architecture for UI. For accessing authenticated ends, JSON Web Token is used.

Features

  1. Users can login or signup.
  2. Users can create, update and delete their notes.

Screenshots

screenshot_login screesnshot_note_list screenshot_note_editor

Build with

Kotlin: As the programming language.
Retrofit: As the rest client.
Gson: To parse json into model classes.
Datastore: To store auth token.
Hilt: To inject dependencies.
Navigation Component: To navigate between navigation.
Kotlin Flow: To fetch data asynchronously.
Kotlin Coroutines: For asynchronous programming.
Android-SpinKit: For loading animation.

Architecture

  1. MVVM Architecture.
  2. Repository pattern.
  3. Single Activity Architecture

More Info

This is the client side application. The REST API for this app is build using ktor framework which you can find here.