The ToDo App is a simple task management application built with Flutter, allowing users to create, update, view, and delete tasks. The app uses the sqflite package for local database management, ensuring that tasks are stored persistently on the device. It also features a user-friendly interface for task management.
- Create Task: Easily add new tasks to your to-do list.
- View Tasks: View all tasks with their creation and updated timestamps.
- Update Task: Modify existing tasks seamlessly.
- Delete Task: Remove tasks with a confirmation prompt to prevent accidental deletions.
- Persistent Storage: Task data is stored locally on the device using
sqflitefor offline access.
- Flutter SDK
- Dart SDK
-
Clone the repository:
git clone <repo_url>
-
Navigate to the project directory:
cd todo_app -
Install the necessary packages:
flutter pub get
-
Run the application:
flutter run
- Tap the + Add Task button on the home screen.
- Enter the task title in the dialog.
- Click Save to add the task.
- All tasks are displayed on the home screen with their respective timestamps.
- Tap on a task from the list.
- In the update dialog, enter the new task title.
- Click Save to update the task.
- Tap the delete icon next to the task.
- Confirm the deletion in the dialog that appears.
- todo.dart: Defines the data model for tasks.
- todo_db.dart: Manages database operations using
sqflitefor tasks. - todo_widget.dart: Contains UI components related to tasks.
- todo_page.dart: Main page displaying the list of tasks and managing interactions.
This app uses sqflite for local database management. The database is initialized when the app starts and tasks are saved, updated, and deleted using SQL operations provided by sqflite.
- sqflite: A Flutter plugin for SQLite, providing persistent storage for structured data. You can read more about it here.
Contributions are welcome! Please create a pull request for any enhancements or bug fixes.
This project is licensed under the MIT License.
This version includes the mention of sqflite and its role in managing the local database. Let me know if anything else needs adjustment!