User Guide
This product is not meant for end-users and therefore there is no user-friendly installer. Please refer to the Setting up section below to learn how to set up the project.
Starting the program
Using IntelliJ
- Find the project in the Project Explorer (usually located at the left side)
* If the Project Explorer is not visible, pressALT
+1
for Windows/Linux,CMD
+1
for macOS to open the Project Explorer tab - Go to the
src
folder and locate the duke file - Right click the file and select Run
duke.Launcher()
- The program now should run on the
Console
(usually located at the bottom side) - Now you can interact with the program through the
Console
Using Command Line
- ‘Build’ the project using IntelliJ
- Open the Terminal/Command Prompt
- cd into the project’s
build\libs\Duke.jar
- Type
java -jar Duke.jar
then Enter to execute - Now you can interact with the program through the CLI
Features
- Adding a Todo task: todo
- Adding a Deadline task: deadline
- Adding an Event task: event
- Listing task information: list
- Finding all tasks containing any keyword: find
- Deleting a task : delete
- Mark as Done of a task: done
- Clearing all entries : clear
- Exiting the program : bye
- Loading the data
- Saving the data
- Sorting all tasks : sort
Notes about the command format:
- Words in UPPER_CASE are the parameters to be supplied by the user.
E.g. DESCRIPTIONS in the command todo TASK DESCRIPTIONS
. Order of parameters are fixed.
Adding a Todo task: todo
Adds a Todo task. ToDos: tasks without any date/time attached to it e.g., visit new theme park
Usage
Format: todo
TASK DESCRIPTIONS
Example of usage:
todo borrow book
Expected outcome:
Got it. I've added this task:
[T][✘] borrow book
Now you have 13 tasks in the list.
Adding a Deadline task: deadline
Adds a Deadline task. Deadlines: tasks that need to be done before a specific date e.g., submit report by 2020-10-23
Usage
Format: deadline
TASK DESCRIPTIONS /by
SPECIFIC DATE (FORMAT:yyyy-MM-dd)
Example of usage:
deadline return book /by 2020-12-12
Expected outcome:
Got it. I've added this task:
[D][✘] return book (by: Sunday, October 11, 2020)
Now you have 15 tasks in the list.
Adding an Event task: event
Adds an Event task. Events: tasks that start at a specific time and ends at a specific time e.g., team project meeting at 2020-10-23 10:00
Usage
Format: event
TASK DESCRIPTIONS /at
SPECIFIC DATE AND TIME (FORMAT:yyyy-MM-dd’T’HH:mm)
Example of usage:
event project meeting /at 2020-12-12 10:00
Expected outcome:
Got it. I've added this task:
[E][✘] project meeting (at: Sunday, Jan 12 2020 07:21:00 AM)
Now you have 17 tasks in the list.
Listing task information: list
Display the text entered by the user back to the user when requested. The list contains the task details.
Usage
Format: list
Example of usage:
list
Expected outcome:
Here are the tasks in your list:
1.[T][✓] write a program
2.[E][✓] visit zoo (at: Sunday, Jan 12 2020 07:21:00 AM)
3.[D][✓] read book (by: Sunday, October 11, 2020)
4.[T][✓] meet friends
5.[E][✓] be happy (at: Sunday, Jan 12 2020 07:21:00 AM)
6.[D][✘] to submit assignment (by: Sunday, October 11, 2020)
7.[D][✓] check coding (by: Sunday, October 11, 2020)
8.[T][✘] add book to list
9.[T][✓] checking
10.[E][✘] class (at: Sunday, Jan 12 2020 07:21:00 AM)
11.[D][✓] submit assignment (by: Sunday, October 11, 2020)
12.[T][✘] add more function
13.[T][✘] borrow book
14.[T][✘] return book
15.[D][✘] return book (by: Sunday, October 11, 2020)
16.[D][✘] read book (by: Sunday, October 11, 2020)
17.[E][✘] project meeting (at: Sunday, Jan 12 2020 07:21:00 AM)
18.[E][✘] class meeting (at: Sunday, Jan 12 2020 07:21:00 AM)
Finding all tasks containing any keyword: find
Finds tasks which contain any of the given keywords.
Usage
Format: find
KEYWORD [MORE_KEYWORDS]
Example of usage:
find book
Expected outcome:
Here are the matching tasks in your list:
1.[D][✓] read book (by: Sunday, October 11, 2020)
2.[T][✘] add book to list
3.[T][✘] borrow book
4.[T][✘] return book
5.[D][✘] return book (by: Sunday, October 11, 2020)
6.[D][✘] read book (by: Sunday, October 11, 2020)
Deleting a task: delete
Deletes the specified task from the task list. Irreversible.
Usage
Format: delete
INDEX
Select the task to delete based on the specified INDEX. The index refers to the index number shown in the most recent listing.
Example of usage:
list
delete 4
Deletes the 4th task in the task list.
Expected outcome:
Noted. I've removed this task:
[T][✘] write a song
Now you have 3 tasks in the list.
Mark as Done of a task: done
Mark specified task as done.
Usage
Format: done
INDEX
Mark as Done of the task at the specified INDEX. The index refers to the index number shown in the most recent listing.
Example of usage:
list
done 4
Marks the 4th task in the task list as done.
Expected outcome:
Nice! I've marked this task as done:
[✓] set a meeting
Clearing all entries: clear
Clears all entries from the address book.
Usage
Format: clear
Example of usage:
clear
Expected outcome:
The Task list initially:
[[T][✓] have dinner, [T][✘] buy book, [T][✘] visit friends, [T][✓] set a meeting]
The Task list after using clear() method:[]
Exiting the program: bye
Exits the program.
Usage
Format: bye
Example of usage:
bye
Expected outcome:
Bye. Hope to see you again soon!
Loading the data
Auto-load the data from the hard disk when duke starts up.
The file name and location e.g., [project_root]/data/duke.txt
Saving the data
Save the tasks in the hard disk automatically whenever the task list changes. There is no need to save manually. If there is no existing txt file, or data folder. The program can auto create a txt file and save the data in the hard disk.
Sorting all tasks: sort
Compares tasks in the list to sort tasks by task status (isDone), by task description.
Usage
Format: sort
Example of usage:
sort
Expected outcome:
Hi, your tasks have been sorted based on Task Status and Description. Thanks
1.[D][✓] eat (by: Saturday, September 19,2020)
2.[T][✓] go to school,buy book
3.[T][x] birthday
4.[D][x] to do homework (by: Saturday, September 19,2020)