Title
Develop a personal task scheduler where users can add, delete,
and view tasks and that reminds users of upcoming tasks.
Teacher Name : Miss. Amrita Sarkar Details of Group Members : Akash Kujur : BCA/40512/23
Manoj Kumar Das : BCA/ 40513/23
Aayush Raj : BCA/40515/23
Ashish Kumar : BCA/40516/23
Personal Task Scheduler
In today’s fast-paced world, managing tasks efficiently is essential for
productivity. A Personal Task Scheduler is a system designed to help
users organize, track, and complete tasks on time. Unlike a simple to-do
list, this scheduler also sends reminders about upcoming deadlines,
ensuring that no task is forgotten.
It allows users to efficiently add, view, mark as done, and delete tasks with
deadlines, improving time management and productivity.
Why is a Task Scheduler Important ?
Managing multiple tasks manually can be overwhelming, leading to missed
deadlines and decreased productivity. This system helps users:
✅ Stay organized by listing all tasks in one place
✅ Improve time management by setting deadlines
✅ Boost efficiency by prioritizing important tasks
✅ Reduce stress by sending timely reminders
How Does It Work ?
1
1️⃣ Users add a task with a deadline.
2️⃣ The system tracks the time remaining for each task.
3️⃣ Upcoming deadlines trigger reminders so users don’t forget
important tasks.
4️⃣ Users can mark tasks as done when completed.
5️⃣ Old or unnecessary tasks can be deleted for a clean and updated
Required Modules
datetime timedelta
• Used to set deadlines and calculate time remaining for tasks. • Used to pause execution or add delays if needed for reminders.
• Helps in tracking overdue tasks by comparing current time • Helps in running periodic checks for upcoming deadlines.
with deadlines
These Modules Help Us To
✅ Automates task tracking and reminders
✅ Ensures smooth execution of the scheduling system
✅ Provides a user-friendly experience by handling tasks efficiently
Technology Used
Python – The programming language used to build the application.
Datetime Module – Handles task deadlines and time calculations.
Lists & Dictionaries – Used for storing task data in memory.
Application and Website use
Vs Code
Standalone CL
Local To-Do List Manager
How It Works
Adding a Task
• The user enters a task description and sets a deadline (in days).
• The system stores the task with its creation time and status as "Pending."
Viewing Task
•The system displays a list of all tasks, including:
• Task Description
• Status (Pending / Completed)
• Time Left Until the Deadline
Marketing a Task as Done
• The user selects a task from the list and marks it as completed.
• The system updates the status to "Done" and removes it from active reminders.
Reminder System
• The system continuously checks upcoming deadlines.
• If a task is near its due time, a reminder notification is triggered.
Deleting a task
5 • The user selects a task to delete, and it is permanently removed from the
system.
Key Code Functions
add_task ( )
• Asks the user for a task description and deadline (in days).
• Calculates the deadline date using the datetime module.
• Stores the task with status (Pending), time added, and deadline
view_tasks ( )
• Loops through the task list and displays task details.
• Shows time left until the deadline using the datetime module.
• Marks completed tasks with [✔] and pending tasks with [ ]
mark_task_done( )
• Displays all tasks and asks the user to select a task number.
• Updates the task status to "Done" so it no longer triggers reminders
delete_task()
• Displays all tasks and asks the user to select a task number.
• Removes the selected task permanently from the list.
Each function ensures that task scheduling, tracking, and reminders work smoothly,
making the system user-friendly and efficient.
Code Execution Flow
Display Menu and get user input
The program runs in a loop until the user selects Exit.
The menu is Display and user chooses an option, and
if-elif conditions handle the input
Menu Handling Task management and Update
•Based on the user’s choice, tasks are dynamically updated in the list:
• Add Task – User enters task details & deadline.
• View Tasks – System displays all tasks with status & time left.
• Mark as Done – Updates task status to completed.
• Delete Task – Removes task from the list.
Automatic Reminder & exit
•The program checks deadlines and sends reminders for upcoming tasks.
•If a task is overdue, it is marked “Overdue”.
•The user can choose Exit, and the loop stops running.
Output Demonstration
The screenshot shows the menu, user input for a new task, and the
successful addition of the task to the system.
Advantages
Advantages
• Simple and user-friendly
• Helps in time management
• Works offline
Future Scope
Future Improvements
• Save tasks to a file
• Add a GUI
• Send notifications/reminders
Conclusion
"The Personal Task Scheduler is a simple yet effective tool for managing daily
tasks. It ensures better time management without requiring an internet
connection. In the future, I plan to enhance it by adding task-saving
functionality, a graphical interface, and automatic notifications to improve user
experience."
Thank You…!