helptodo, deadline, eventlistdelete, cleardonehighpriority, lowprioritybyesaveloadsortsamplesearchEnsure you have Java 11 or above installed in your Computer.
Download the latest Duke.jar here.
Copy the file to the folder you want to use as the home folder for your Duke.
Double-click the file to start the app. A GUI similar to the example below should appear in a few seconds.
Note: the example below contains some sample data.

help will list out all available commands.sample will fill Duke with some sample data.Notes about the command format:
Words in UPPER_CASE are parameters to be supplied by the user.
e.g. in todo DESCRIPTION, DESCRIPTION is a parameter which can be used as todo buy eggs.
Items in square brackets [] are optional.
e.g done INDEX [INDEX...] can be used as done 1 or as done 1 2.
Items with … after them can be used multiple times including zero times.
e.g. [INDEX...] can be used as ` ` (i.e. 0 times), 1, 1 2 3 etc.
Items in curly bracket {} are mutually exclusive.
e.g. search {KEYWORD | DATE} can only be used as either search KEYWORD or search DATE.
helpFormat: help
Shows all available commands.
todo, deadline, eventFormat: todo DESCRIPTION, deadline DESCRIPTION /by DATE, event DESCRIPTION /at DATE
Adds a task to the tasklist.
Current supports 3 types of tasks:
todo
deadline
DATE must be in the valid format YYYY-MM-DD.event
DATE must be in the valid format YYYY-MM-DD.Examples:
todo buy eggsdeadline do math homework /by 2021-01-01event meeting with friends /at 2021-01-01listFormat: list
Shows a list of all tasks.
delete, clearFormat: delete INDEX [INDEX...], clear
There are 2 ways to delete tasks:
delete
INDEX.INDEX must be a valid number.delete 1 2 3.clear
A prompt for delete confirmation will be given.
doneFormat: done INDEX [INDEX...]
After completing a tasks, you can mark it as done.
Incomplete tasks are marked with [ ]
Completed tasks are marked with [X].
highpriority, lowpriorityFormat: highpriority INDEX, lowpriorty INDEX
Set a task to high or low priorty
byeFormat: bye
Exits the program. A prompt to save current tasklist will be given.
saveFormat: save
Saves the current tasklist into [JAR file location]/data/dukeData.txt.
loadFormat: load
Load a previously saved tasklist from [JAR file location]/data/dukeData.txt.
Duke will automatically load data from this location on startup, if it is available.
Warning: If this file is edited into an invalid format, Duke will start up with an empty tasklist.
sortFormat: sort
Sorts the tasklist with the following order:
sampleFormat: sample
Fills Duke with sample data for new users to get a feel of the task manager.
Warning: Calling sample will overwrite any current tasks in the tasklist.
searchFormat: search {KEYWORD | DATE}
Shows a list of tasks which matches the keyword or falls on the given date.
KEYWORD
book will match Book.return b will match Return Book.DATE
DATE must be in the valid format YYYY-MM-DD.DATE will be matched.DATE will be matched.Examples:
search booksearch 2021-01-01Has a convenient list display on the left of the gui.
ESC key
UP, DOWN arrow keys
| Action | Format, Examples |
|---|---|
| bye | bye |
| clear | clear |
| deadline | deadline DESCRIPTION /by DATEeg. deadline do math homework /by 2021-01-01 |
| delete | delete INDEX [INDEX...]eg. delete 1, delete 1 2 3 |
| done | help |
| event | event DESCRIPTION /at DATEeg. event meeting with friends /at 2021-01-01 |
| help | help |
| highpriority | highpriority INDEXeg. highpriority 1 |
| list | list |
| load | load |
| lowpriority | lowpriority INDEXeg. lowpriority 1 |
| sample | sample |
| save | save |
| search | search {KEYWORD | DATE}eg. search abc, search 2021-01-01 |
| sort | sort |
| todo | todo DESCRIPTIONeg. todo read book |