A simple task management system built with C++98, featuring a modular design and multiple data structures for efficient task handling.
- Task Creation
Users can create new tasks with title, description, due date, and priority. - Task Prioritization
Assign and update task priorities (e.g., High, Medium, Low). - Task Scheduling
Schedule tasks for specific dates or recurring intervals. - Task Tracking
Monitor task status: Pending, In Progress, Completed, Overdue. - Task Filtering & Sorting
Filter and sort tasks by priority, due date, or status. - Task Delegation
Assign tasks to different users for team collaboration. - Notifications
Receive alerts for upcoming, overdue, or updated tasks. - Task History
View completed tasks and undo/redo actions. - Weekly & To-Do Lists
Organize tasks into weekly plans and daily to-do lists.
- Circular & Doubly Linked Lists
Store and traverse tasks efficiently. Used for main task list and history tracking. - Queue
Manage task execution order (e.g., for notifications or reminders). - Stack
Track completed tasks for undo/redo functionality.
src/
├── history.cpp & history.h # Task history (stack)
├── list.cpp & list.h # Linked list implementation
├── main.cpp # Entry point, menu, and UI
├── manager.cpp & manager.h # Task manager logic
├── priority.cpp & priority.h # Priority queue logic
├── task.cpp & task.h # Task class definition
├── todo.cpp & todo.h # To-Do list logic
├── weekly.cpp & weekly.h # Weekly schedule logic
├── tasks.txt # Persistent storage for tasks
└── makefile # Build instructions
- Prerequisites
C++98 compatible compiler (e.g., g++). - Installation
Clone the repository and navigate to the project directory:git clone https://github.com/TebogoYungMercykay/Simple-Task-Manager-System.git cd Simple-Task-Manager-System
- Build & Run
Compile and start the application:make clean && make make run
- Usage
Follow the interactive menu to:- Add, edit, or delete tasks
- View all, pending, or completed tasks
- Assign priorities and due dates
- Mark tasks as complete or undo completions
- Filter and sort tasks
- Add New Task
- View All Tasks
- View Tasks by Priority
- Mark Task as Completed
- Undo Last Completed Task
- View Weekly Schedule
- Save & Exit
- Fork the repository
- Create a new branch for your feature or bug fix
- Implement your changes and ensure they pass all tests
- Submit a pull request with a detailed description
This project is licensed under the MIT License.