πNotify is a simple note application that is built with Modern Android development tools. This project showcases the Good implementation of Android with proper architecture design. Made with β₯ for all Android Developers
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. π
- Switch between layouts. π
- Share the notes in the form of Text, Image & PDF π€
- 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.
- Accompanist - A collection of extension libraries for Jetpack Compose
This app uses MVVM(Model View View-Model) architecture.