Duke, is a Personal Assistant Chatbot
that helps you to keep track of various things,
optimized for use via a Command Line Interface (CLI)
while still having the benefits of a Graphical User Interface (GUI).
The name ‘Duke’ was inspired by Duke, the Java Mascot.

Ensure you have Java 11 or above installed in your Computer.
Download the latest duke.jar from 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. The GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.

Type the command in the command box and press Enter to execute it. e.g. typing list and pressing Enter will show the tasks list.
Some example commands you can try:
list : Lists all tasks.
todoread book : Adds a todo task named read book to the tasks list.
delete1 : Deletes the 1st task shown in the current list.
Refer to the Features below for details of each command.
:information_source: Notes about the command format:
Words in UPPER_CASE are the parameters to be supplied by the user.
e.g. in todo DESCRIPTION, DESCRIPTION is a parameter which can be used as todo read book.
First word of a command belongs to a feature type. If the first word of the input is not recognised by Duke,
Duke will not execute the given command.
Command cannot include sensitive symbols. For example, |, (, ), [ and ].
listLists all the tasks that is saved in the device.
todoSave a todo tasks into the list.
Format: todo DESCRIPTION
DESCRIPTION cannot be blank.Example of usage:
todo read book
deadlineSave a deadline tasks into the list.
Format: deadline DESCRIPTION /by DATE/MONTH/YEAR
DESCRIPTION cannot be blank.DATE/MONTH/YEAR cannot be blank.Example of usage:
deadline CS2103T User guide /by 21/07/2020
eventSave an event tasks into the list.
Format: event DESCRIPTION /at DATE/MONTH/YEAR HOUR:MINUTES
DESCRIPTION cannot be blank.DATE/MONTH/YEAR HOUR:MINUTES cannot be blank.Example of usage:
event Google interview /at 15/06/2020 12:00
deleteDelete a task in the list by given index.
Format: delete INDEX
INDEX cannot exceed the number of things in the task list.Example of usage:
delete 1
findFind all matching task by given description.
Format: find DESCRIPTION
Example of usage:
find book
doneMark a task as done by its index.
Format: done INDEX
INDEX cannot exceed the number of things in the task list.Example of usage:
done 1
sortSort the task list by date or by description.
Format: sort by date / sort by description
Example of usage:
sort by date or sort by description
Duke’s data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.