Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/turskyi/todo
Example of using DataStore and Dagger Hilt
https://github.com/turskyi/todo
android datastore flow hilt room-database
Last synced: 27 days ago
JSON representation
Example of using DataStore and Dagger Hilt
- Host: GitHub
- URL: https://github.com/turskyi/todo
- Owner: Turskyi
- Created: 2021-03-07T15:52:18.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-07-21T00:00:16.000Z (6 months ago)
- Last Synced: 2024-07-22T00:43:01.422Z (5 months ago)
- Topics: android, datastore, flow, hilt, room-database
- Language: Kotlin
- Homepage:
- Size: 1.3 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![Stand With Ukraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner-direct-single.svg)](https://stand-with-ukraine.pp.ua)
# ToDo App
## Project Description
The ToDo App is an Android mobile application that allows users to manage their tasks efficiently.
The main screen displays a list of tasks with checkboxes. When a checkbox is clicked, the
corresponding task is crossed out. The main screen also features a Floating Action Button (FAB) to
add new tasks, a menu button with options to hide or delete completed tasks, a sort button to sort
tasks by name or date created, and a search button.## Features
- **Tasks Screen**: Displays tasks with checkboxes. Completed tasks are crossed out.
- **Add New Task**: A screen to add a new task with a text field and an "Important task" checkbox.
- Important tasks are displayed at the top of the list with an exclamation mark.
- **Menu Options**: Options to hide completed tasks and delete all completed tasks.
- **Sort Tasks**: Sort tasks by name or date created.
- **Search Tasks**: Search for tasks using the search button.## Installation Instructions
1. Download the project.
2. Open the project in Android Studio.
3. Run the project from Android Studio.## Usage
Once installed, developers can observe a solid example of using MVVM with Hilt, Flow, and
DataStore. The app can be installed on an Android device and used as a to-do list app. Note that
the app is not unique and similar functionality can be found in many other apps on Google Play.## Technologies Used
- **MVVM**:
[Monolithic Model-View-ViewModel architecture](https://en.wikipedia.org/wiki/Monolithic_application).
- **Hilt**: Dependency injection library.
- **Flow**: Kotlin's Flow for reactive programming.
- **DataStore**: Jetpack's DataStore for data storage.
- **Code Readability:** code is easily readable with no unnecessary blank lines, no unused variables
or methods, and no commented-out code, all variables, methods, and resource IDs are descriptively
named such that another developer reading the code can easily understand their function.## Contributing
Anyone can contribute by creating a pull request with changes. Contributions are welcome, although
the app currently does not have unique features that differentiate it from other to-do list apps.## Credits
This project is inspired by the
[MVVMTodo](https://github.com/codinginflow/MVVMTodo/tree/Part-14_Restoring-the-Fragment-SearchView)
project by [Coding in Flow](https://github.com/codinginflow).## License
This project does not have an intentional license.
• Screenshots: