When you run the application, the welcome screen shown below should appear and Bob is ready to accept your input from
the keyboard!
Welcome to Bob, your personal task management chatbot! It is a desktop app optimised for use via a Command Line Interface (CLI). Bob helps you keep track of your todos, deadlines and events with ease. You can add a task (todo, deadline or event), view the task list, search for tasks using keywords, mark a task as done, unmark a task as not done and delete a task.
Add a todo to the task list.
Command: todo [description]
Example:
todo read book
Expected output:
____________________________________________________________
Got it. I've added this task:
[T][ ] read book
Now you have 1 task in the list.
____________________________________________________________
Add a deadline with a specific due date to the task list.
Command: deadline [description] /by [due date]
Example of command input:
deadline return book /by June 6th
Expected output:
____________________________________________________________
Got it. I've added this task:
[D][ ] return book (by: June 6th)
Now you have 2 tasks in the list.
____________________________________________________________
Add an event with a start and end time to the task list.
Command: event [description] /from [start time] /to [end time]
Example of command input:
event project meeting /from Aug 6th 2pm /to 4pm
Expected output:
____________________________________________________________
Got it. I've added this task:
[E][ ] project meeting (from: Aug 6th 2pm to: 4pm)
Now you have 3 tasks in the list.
____________________________________________________________
Display all tasks in the task list, together with the done status for each task.
Command input:
list
Expected output:
____________________________________________________________
Here are the tasks in your list:
1.[T][ ] read book
2.[D][ ] return book (by: June 6th)
3.[E][ ] project meeting (from: Aug 6th 2pm to: 4pm)
____________________________________________________________
Search for tasks using a keyword or multiple keywords.
Command: find [keyword/keywords]
Example of command input (Single keyword):
find book
Expected output:
____________________________________________________________
Here are the matching tasks in your list:
1.[T][ ] read book
2.[D][ ] return book (by: June 6th)
____________________________________________________________
Example of command input (Multiple keywords):
find project meeting
Expected output:
____________________________________________________________
Here are the matching tasks in your list:
3.[E][ ] project meeting (from: Aug 6th 2pm to: 4pm)
____________________________________________________________
Mark a task as done to show a “X” beside the task description.
Command: mark [task number]
Example of command input:
mark 1
Expected output:
____________________________________________________________
Nice! I've marked this task as done:
[T][X] read book
____________________________________________________________
Unmark a task as not done to remove the “X” beside the task description.
Command: unmark [task number]
Example of command input:
unmark 1
Expected output:
____________________________________________________________
OK, I've marked this task as not done yet:
[T][ ] read book
____________________________________________________________
Delete a task from the task list.
Command: delete [task number]
Example of command input:
delete 1
Expected output:
____________________________________________________________
Noted. I've removed this task:
[T][ ] read book
Now you have 2 tasks in the list.
____________________________________________________________
Now, if you input the command:
list
Expected output:
____________________________________________________________
Here are the tasks in your list:
1.[D][ ] return book (by: June 6th)
2.[E][ ] project meeting (from: Aug 6th 2pm to: 4pm)
____________________________________________________________
Exit the chatbot.
Command input:
bye
Expected output:
____________________________________________________________
Bye. Hope to see you again soon!
____________________________________________________________
Bob automatically saves your tasks to a file after each operation (adding, deleting, marking/unmarking tasks). This means you don’t have to worry about losing your progress!
Auto-Saving: Every time you add, delete, mark or unmark a task, Bob automatically saves the updated task list to a file.
Auto-Loading on Startup: When you start Bob again, the program will automatically load your previously saved tasks from the file, allowing you to continue from where you left off.
This feature ensures that all tasks persist even after you exit the application, providing a seamless user experience.