/Notify

📝 Notify is a simple note application which is build with Modern Android development tools.

Primary LanguageKotlinMIT LicenseMIT

Niotify

Notify 📱

📝 Notify is a simple note application which is build with Modern Android development tools.
This project showcases Good implementation of Android with proper architecture design.
Made with ♥ for all Android Developers

Features 👓

Notify focuses on the following key things:

  • Single Activity Design
  • Offline Capability - Notes ✈️
  • Clean and Simple Material UI 🎨
  • Dark mode 🌗
  • Back/Restore feature 👀
  • Jetpack Compose UI
  • Tests

Built with 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous calls and tasks to utilize threads.
  • Jetpack Compose UI Toolkit - Modern UI development toolkit.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • Room - Room is an Android library which is an ORM that wraps Android's native SQLite database.
    • StateFlow and SharedFlow - StateFlow and SharedFlow are Flow APIs that enable flows to optimally emit state updates and emit values to multiple consumers.
  • Dependency Injection -
    • Hilt-Dagger - A standard way to incorporate Dagger dependency injection into an Android application.
    • Hilt-ViewModel - DI for injecting ViewModel.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.

Architecture 👷‍♂️

mvvm

This app uses MVVM(Model View View-Model) architecture.