Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fitsumhelina/to-do-list
This project is a command-line based to-do list manager written in Python. It allows users to create, read, update, and delete tasks, as well as update their status. The tasks are stored in a text file for persistence.
https://github.com/fitsumhelina/to-do-list
file file-based functions hackathon hackathon-project oop oop-in-python project python python3 todolist
Last synced: about 3 hours ago
JSON representation
This project is a command-line based to-do list manager written in Python. It allows users to create, read, update, and delete tasks, as well as update their status. The tasks are stored in a text file for persistence.
- Host: GitHub
- URL: https://github.com/fitsumhelina/to-do-list
- Owner: Fitsumhelina
- License: mit
- Created: 2024-04-11T18:48:53.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-06-25T16:56:24.000Z (4 months ago)
- Last Synced: 2024-06-26T14:08:15.795Z (4 months ago)
- Topics: file, file-based, functions, hackathon, hackathon-project, oop, oop-in-python, project, python, python3, todolist
- Language: Python
- Homepage:
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# To-Do List Manager
This project is a command-line based to-do list manager written in Python. It allows users to create, read, update, and delete tasks, as well as update their status. The tasks are stored in a text file for persistence.
## Features
- **Create Task:** Add a new task with a name, time, and status.
- **Read Task:** View the details of a specific task.
- **Update Task:** Change the time associated with a task.
- **Delete Task:** Remove a task from the list.
- **Update Status:** Change the status of a task to pending, started, or finished.
- **Data Persistence:** Save and load tasks from a text file.## Getting Started
### Prerequisites
- Python 3.x installed on your system.
### Installation
1. Clone the repository:
```bash
git clone https://github.com/your-username/todo-list-manager.git
cd todo-list-manager
```2. Run the to-do list manager:
```bash
python todo_manager.py
```### Usage
1. Upon running the script, you will be presented with a menu of options:
```
1. Add Task
2. Read Task
3. Update Task
4. Delete Task
5. Update Status
6. Exit
```2. Select an option by entering the corresponding number.
3. Follow the prompts to perform the desired action.
## Code Overview
### Class `task`
This class represents a task with a name, time, and status.
### Class `task_manager`
This class manages the tasks, providing methods to create, read, update, and delete tasks. It also handles saving and loading tasks to and from a text file.
- `create_task(name, time, status)`: Adds a new task.
- `read_task(name)`: Displays the details of a task.
- `read_status(name)`: Displays the status of a task.
- `status_change(name, new_status)`: Changes the status of a task.
- `update_task(name, new_time)`: Updates the time of a task.
- `delete_task(name)`: Deletes a task.
- `load_data()`: Loads tasks from the text file.
- `save_data()`: Saves tasks to the text file.## License
This project is licensed under the MIT License - see the [LICENSE](#LICENSE) file for details.
## Contributing
1. Fork the repository.
2. Create your feature branch (`git checkout -b feature/AmazingFeature`).
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`).
4. Push to the branch (`git push origin feature/AmazingFeature`).
5. Open a Pull Request.## Authors
- **Fitsum Helina** - [Your GitHub Profile](https://github.com/Fitsumhelina)
---
## License
MIT License[Link to License](licence)