This project is a powerful and versatile TaskManager app built using Compose, Navigation, Jetpack ViewModel, and Room. It allows you to create a Task based on category and DateTime with Bookmark, and complete and edit a Task across desktops (macOS), Android, and iOS.
- Multiplatform Support: Enjoy a consistent dictionary experience on various devices, including desktops, Android, and iOS.
- Room Database for Offline Storage: Save and Bookmark Tasks.
- Kotlin date-Time to create a beautiful custom calendar without using any library
- Compose Navigation to handle screens
- Use the jetpack library to implement the ViewModel
- Beautiful Compose UI: Create an intuitive and visually appealing user interface with Compose.
- 🔥 Compose Multiplatform
- 💉 Koin
- 📚 Room Database
- 📦 SQLite
- 🗺 Navigation
- 🏗 ViewModel
- 💎 KotlinX Serialization
- 🏃♂️ Coroutines
- 📝 Napier
Prerequisites:
- Android Studio with Compose plugins installed or Fleet IDE.
- Basic knowledge of Kotlin, Compose, AndroidX libs like and Room, Navigation, etc.
git clone https://github.com/SaeedNoshadi89/NoteByKMP.git
- Running the App: Open the project in your preferred IDE. Build and run the project for your target platform (Android, Desktop, or iOS) following the specific instructions for your IDE and platform.
- commonMain: Contains platform-agnostic code, including data models, and core business logic.
- androidMain: Specific code for the Android platform, such as UI components using Compose.
- desktopMain: Specific code for desktop platforms (macOS), likely using Compose for desktop as well.
- iosMain: Specific code for the iOS platform, potentially using Compose for iOS.
- Compose: A cutting-edge UI framework for building modern, declarative UIs.
- Room: An SQLite wrapper for local data persistence with an intuitive API.
- Kotlin: A concise and expressive language for developing Android and other cross-platform applications.
- Koin: A DI library to handle Dependency Injection
Copyright (c) 2024 Saeed Noshadi
This library is licensed under the MIT License.
See [LICENSE](https://github.com/SaeedNoshadi89/NoteByKMP/blob/main/LICENSE)
Developed By Saeed Noshadi