https://github.com/itcodehery/todo_list_bloc
[COMPLETE] Todo List App using Bloc
https://github.com/itcodehery/todo_list_bloc
crud localstorage state-management theme
Last synced: 28 days ago
JSON representation
[COMPLETE] Todo List App using Bloc
- Host: GitHub
- URL: https://github.com/itcodehery/todo_list_bloc
- Owner: itcodehery
- Created: 2024-06-29T16:35:03.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-02T16:08:03.000Z (over 1 year ago)
- Last Synced: 2025-01-21T09:28:38.955Z (about 1 year ago)
- Topics: crud, localstorage, state-management, theme
- Language: Dart
- Homepage:
- Size: 1.04 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Todo List App



## Table of Contents
- [Overview](#overview)
- [Features](#features)
- [Screenshots](#screenshots)
- [Installation](#installation)
- [Usage](#usage)
- [State Management](#state-management)
- [Data Storage](#data-storage)
- [Contributing](#contributing)
- [License](#license)
- [Contact](#contact)
## Overview
This **Todo List App** is a simple application built with **Flutter**. It uses **Bloc** for state management, **Shared Preferences** for persistent settings, and **Sqflite** for storing and managing tasks. The app helps users keep track of their tasks, set reminders, and organize their daily activities effectively.
## Features
- **Add, Update, and Delete Todos**: Easily manage your tasks.
- **Mark as Completed**: Check off completed tasks.
- **Persistent Storage**: Store tasks locally using **Sqflite**.
- **State Management**: Efficient state handling with **Bloc**.
- **Dark Mode**: Toggle between light and dark themes.
- **Settings**: Save user preferences with **Shared Preferences**.
## Screenshots
## Installation
### Prerequisites
- [Flutter](https://flutter.dev/docs/get-started/install)
- [Dart](https://dart.dev/get-dart)
- [Android Studio](https://developer.android.com/studio) or [VSCode](https://code.visualstudio.com/)
### Steps
1. **Clone the repository**:
```bash
git clone https://github.com/username/todo_list_app.git
cd todo_list_app
```
2. **Install dependencies**:
```bash
flutter pub get
```
3. **Run the app**:
```bash
flutter run
```
## Usage
### Adding a Todo
1. Tap the `Add Item` button on the home screen.
2. Enter the task details.
3. Save the task by tapping the `Add` button.
### Marking as Completed
- Tap the checkbox next to a task to mark it as completed.
### Toggling Dark Mode
1. Go to the `Settings` page.
2. Toggle the dark mode switch.
## State Management
The app uses the **Bloc** pattern for state management. **Bloc** (Business Logic Component) separates the presentation layer from the business logic, ensuring a clear separation of concerns.
## Data Storage
The app uses **Sqflite** for local data storage and **Shared Preferences** for storing user settings.
## Contributing
Contributions are welcome! Please open an issue or submit a pull request for any bug fixes or new features.
### Steps
1. **Fork the repository**.
2. **Create a branch** for your feature or fix:
```bash
git checkout -b feature-name
```
3. **Commit your changes**:
```bash
git commit -m 'Add some feature'
```
4. **Push to the branch**:
```bash
git push origin feature-name
```
5. **Open a Pull Request**.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Contact
- **GitHub**: [itcodehery](https://github.com/itcodehery)
- **Email**: [haririo321@gmail.com](mailto:haririo321@gmail.com)