8000 GitHub - smileagain6698/todo_py: πŸ‘‹ Welcome to the Personal To-Do List Application repository! This project is designed to help users easily manage their tasks, categorize them, and track progress with a simple, user-friendly interface. Built with Python, it emphasizes ease of use, local data persistence, and a clean interface.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

πŸ‘‹ Welcome to the Personal To-Do List Application repository! This project is designed to help users easily manage their tasks, categorize them, and track progress with a simple, user-friendly interface. Built with Python, it emphasizes ease of use, local data persistence, and a clean interface.

Notifications You must be signed in to change notification settings

smileagain6698/todo_py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“‹ Personal To-Do List Application

πŸ“ Description

The Personal To-Do List Application is a simple task management tool built with Python. It allows users to create, view, edit, and delete tasks, and categorize them into groups such as Work, Personal, and Urgent. The tasks are saved locally in a JSON file, ensuring that the task list is preserved across different sessions.

✨ Features

  • βœ… Task Management: Add tasks with a title, description, and category.
  • βœ”οΈ Task Completion & Deletion: Mark tasks as completed or delete them from the list.
  • πŸ—‚οΈ Task Categorization: Classify tasks into categories such as Work, Personal, or Urgent.
  • πŸ’Ύ Persistence: Tasks are saved locally in a JSON file, allowing them to be available even after the application is closed.

πŸ“ Project Structure

/todo_app
β”œβ”€β”€ todo.py         # Main application logic
β”œβ”€β”€ tasks.json      # JSON file to store tasks
└── README.md       # Project documentation

βš™οΈ Installation

  1. Clone the repository:
git clone https://github.com/smileagain6698/todo_py.git
  1. Navigate to the project directory:
cd todo-app
  1. Run the application:
  • For Command-Line Interface (CLI):
 python todo.py

🏎️ How to Use

πŸ–₯️ Command-Line Interface (CLI)

  1. Run the application from the terminal:
python todo.py
  1. You will see the following menu:
--- To-Do List ---
1. Add Task
2. View Tasks
3. Mark Task Completed
4. Delete Task
5. Exit 
  1. Add a Task:
  • Choose option 1 and enter the task details when prompted (title, description, category).
  1. View Tasks:
  • Choose option 2 to display all the tasks.
  1. Mark a Task as Completed:
  • Choose option 3, then enter the task number to mark it as completed.
  1. Delete a Task:
  • Choose option 4, then enter the task number to delete it.
  1. Exit:
  • Choose option 5 to exit and save your tasks.

πŸ”¨ Task Class Structure

The application uses a Task class to handle individual tasks.

class Task:
    def __init__(self, title, description, category):
        self.title = title
        self.description = description
        self.category = category
        self.completed = False

    def mark_completed(self):
        self.completed = True

πŸ’Ύ File Handling

Tasks are saved to and loaded from a tasks.json file in the following format:

[
    {
        "title": "Finish Assignment",
        "description": "Complete the math assignment",
        "category": "Work",
        "completed": false
    },
    ...
]

🌟 Future Enhancements

  • ⏫ Add task priority levels (High, Medium, Low).
  • πŸ”” Implement reminders and notifications for due tasks.
  • πŸ–ΌοΈ Expand the Tkinter GUI to include more interactive elements.

License

his project is open source and available under the MIT License.

About

πŸ‘‹ Welcome to the Personal To-Do List Application repository! This project is designed to help users easily manage their tasks, categorize them, and track progress with a simple, user-friendly interface. Built with Python, it emphasizes ease of use, local data persistence, and a clean interface.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0