User Guide
Duke is a command line application for you to keep track of your tasks.
Prerequisites
Ensure that you have Java 11 installed in your computer.
Features
Feature 1: Task Tracking
In Duke, tasks are categorised into 3 main types:
Todo
- A task which you intend to do.
Deadline
- A task which you intend to complete before a particular date.
Event
- A task which the you intend to attend between 2 dates.
Tasks can be added or deleted in Duke. You can also mark your tasks as done and ask for the list of tasks that are currently tracked by Duke.
Dates in Duke are of the format dd/MM/yyyy HHmm
where HHmm
denotes the time in 24-hour format.
Feature 2: Statistics
Duke is able to help you to keep track of the following statistics:
- Number of tasks you completed on each day
- Number of tasks you did not complete on each day
- Number of deadlines you have missed on each day
Usage
1. Add a Todo
task - todo <task>
This command helps you to add a Todo
task with the name <task>
into Duke.
Todo
tasks are denoted by [T]
in Duke.
Example of usage:
todo sleep
Expected outcome:
UWU. A task has been added:
[T][Not Done] sleep
Now you have 1 task in the list.
2. Add a Deadline
task - deadline <task> /by dd/MM/yyyy HHmm
This command helps you to add Deadline
task with <task>
as description and
dd/MM/yyyy HHmm
as the deadline.
Deadline
tasks are denoted by [D]
in Duke.
Example of usage:
deadline homework /by 20/09/2019 1800
Expected outcome:
UWU. A task has been added:
[D][Not Done] homework (by: 20/09/2019 1800)
Now you have 2 tasks in the list.
3. Add an Event
task - event <task> /at dd/MM/yyyy HHmm - dd/MM/yyyy HHmm
This command helps you to add an Event
task with <task>
as the task name. The first
date is the start date of the event while the second date is the end date of the event.
If the start date is later than the end date, Duke will inform you about it.
Event
tasks are denoted by [E]
in Duke.
Example of usage:
event CS2103T lecture /at 20/09/2019 1600 - 20/09/2019 1800
Expected outcome:
UWU. A task has been added:
[E][Not Done] CS2103T Lecture (at: 20/09/2019 1600 - 20/09/2019 1800)
Now you have 3 tasks in the list.
Example of an end date being earlier than the start date:
event CS2103T lecture /at 20/09/2019 1000 - 20/09/2019 0000
Expected outcome:
Please enter your date in "dd/MM/yyyy HHmm" format!
Ensure that the times are correct and are in chronological order (if applicable).
4. Mark task as done - done <index>
This helps you to mark the task at <index>
as done. If there are no tasks existing at
<index>
, Duke will inform you about it.
Example of usage:
done 1
Expected outcome:
^W^. A task has been marked done:
[T][Done] sleep
5. Delete task - delete <index>
This helps you to delete the task at <index>
. If there are no tasks existing at <index>
,
Duke will inform you about it.
Example of usage:
delete 1
Expected outcome:
OWO. A task has been removed:
[T][Done] sleep
Now you have 2 tasks in the list
6. List all the tasks - list
This command will list out all of the tasks that you have entered into Duke. Deleted tasks will not be listed.
Example of usage:
list
Expected outcome:
<(^.^<) You must be quite free! You have 2 task(s)!
1. [D][Not Done] homework (by: 20/09/2019 1800)
2. [E][Not Done] CS2103T lecture (at: 20/09/2019 1600 - 20/09/2019 1800)
7. Find all tasks with the keyword - find <keyword>
This command will help you to find all of the tasks in Duke that contain the given <keyword>
.
If there are any matches, Duke will print out the matches. If no matches are found, Duke will inform
you about it.
Example of usage:
find homework
Expected outcome:
It's a match!
1. [D][Not Done] homework (by: 20/09/2019 1800)
8. Print out statistics - stats
This command will print out all the statistics that Duke has been keeping track of. Only statistics that are at most 6 days old will be printed.
When Duke is first launched on your platform, only the current day statistics will be shown.
If a deadline is missed while Duke is active, this missed deadline will only be updated when Duke is relaunched.
Deleting a completed task or a missed deadline will not cause any changes to the statistics. For example, if you have 3 completed tasks on a particular day, your daily statistics will still inform you that you have completed 3 tasks even when the tasks have been deleted.
Example of usage:
stats
Expected outcome:
16/09/2019
You have completed 0 tasks on this day.
You have 2 incomplete tasks on this day.
You have missed 0 deadlines.
9. Exit Duke - bye
This command will help to store all the tasks that you have entered in Duke. After which, the Duke application will close.
Example of usage:
bye
Expected outcome:
Duke exits and saves your current tasks.