Welcome to Duke, a Personal Assistant Task Manager that helps users to manage and keep track of various tasks.
Duke is optimised for users proficient in Command Line Interface (CLI).
- Quick start
- Features
- Understanding Dates and Times
- Saving the Data
- Editing the data file
- FAQ
- Command summary
- Ensure you have Java 11 (reccomended) or above installed on your computer.
- Download the latest jar file from here.
- Copy the file to the folder you want to use as the home folder for the application.
- Open the command line in that folder and run the command
java -jar [filename].jar. - When you first run the application, a greeting will be displayed.
_________________________________________
/ _____________________________________ \
| | | |
| | C:\> Initiating programme. . . | |
| | | |
| | C:\> Creating Duke... | |
| | | |
| | | |
| | | |
| |_____________________________________| |
\_____________________________________/
\________________________________/
_________________________________
_-'.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--- `-_
_-'.-.-. .---.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--..-.-.`-_
Hello! I'm Duke
What can I do for you?
- Type the command and press Enter to execute it.
- Refer to the Features below for details of each command.
Notes about the command format:
- Words in
[BRACKETS]are the parameters to be supplied by the user. e.g. inevent [NAME] /at [DATE],[NAME]and[DATE]are parameters which can be used in the form ofevent Alibaba Shopping /at 2022-11-11.- Extraneous parameters for commands that do not take in parameters will be ignored.
Displays the list of commands available by Duke.
Format: help
Sample:
help
--------------------------------------
Duke - your CLI based Personal Assistant Chatbot
deadline [TASK] /by [DATE] - add a task to be done before a specific date
event [TASK] /at [DATE] - add a task that start at a specific date and ends at a specific date
todo [TASK] - add a task without any data/time attached
delete [INDEX] - delete a task from the list by index
bye - exits the application
find [KEYWORD] - find all tasks by searching for a keyword
help - provide a quick user guide
list - list out all the tasks added to list
mark [INDEX] - mark a task as done by index shown on list
unmark [INDEX] - mark a task as not done by index shown on list
Full Documentation at https://github.com/CheahHaoYi/ip
--------------------------------------
Exits the application.
Format: bye
Sample:
bye
--------------------------------------
--------------------------------------
BEEP BEEP >>>> SEE >>> YOU >>>> AGAIN >>> BEEP BEWWWWW >>>
--------------------------------------
--------------------------------------
Lists out all the tasks in the task list.
The letter in the first pair of [ ] indicate the type of task
[T]for a todo task[D]for a deadline task[E]for an event task
The letter in the second pair of [ ] indicate if the task is marked done
[ ]for a task that is not done[X]for a task that is done.
See mark and unmark for further description
Format: list
Sample:
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][X] Hao Yi: Answer CS2113 Tutorial questions
2.[D][ ] weekly CS2113 quiz (by: Monday 9pm)
3.[E][X] CS2113 lecture (at: Friday)
4.[E][ ] CS1010 PE (at: tomorrow)
--------------------------------------
Creates a ToDo task.
Format: todo NAME
Sample:
todo CS2113 finals
--------------------------------------
HELLO BEEP, added a new ToDo: CS2113 finals
[T][ ] CS2113 finals
Beep boop, now you have 1 tasks
--------------------------------------
Creates an Event with the event date
Format: event [TASK] /at [DATE]
Sample:
event CS2113 ip demo /at Friday
--------------------------------------
OH NO BEEP BEEP, a new Event: CS2113 ip demo
[E][ ] CS2113 ip demo (at: Friday)
Beep boop, now you have 2 tasks
--------------------------------------
Creates a Deadline with the time of the deadline
Format: deadline [TASK] /by [DATE]
Sample:
deadline CS2113 project /by tonight
--------------------------------------
OH NO BEEP BEEP, a new Deadline: CS2113 project
[D][ ] CS2113 project (by: tonight)
Beep boop, now you have 3 tasks
--------------------------------------
Marks a task in the list as done.
Format: mark [INDEX]
Sample:
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][ ] CS2113 finals
2.[E][ ] CS2113 ip demo (at: Friday)
3.[D][ ] CS2113 project (by: tonight)
--------------------------------------
mark 2
--------------------------------------
Nice! I've marked this task as done:
[E][X] CS2113 ip demo (at: Friday)
--------------------------------------
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][ ] CS2113 finals
2.[E][X] CS2113 ip demo (at: Friday)
3.[D][ ] CS2113 project (by: tonight)
--------------------------------------
Marks a task in the list as not done.
Format: unmark [INDEX]
Sample:
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][ ] CS2113 finals
2.[E][X] CS2113 ip demo (at: Friday)
3.[D][ ] CS2113 project (by: tonight)
--------------------------------------
unmark 2
--------------------------------------
OK, I've marked this task as not done yet:
[E][ ] CS2113 ip demo (at: Friday)
--------------------------------------
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][ ] CS2113 finals
2.[E][ ] CS2113 ip demo (at: Friday)
3.[D][ ] CS2113 project (by: tonight)
--------------------------------------
List out all tasks that contains a particular keyword.
Format: find [KEYWORD]
Sample:
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][X] Hao Yi: Answer CS2113 Tutorial questions
2.[D][ ] weekly CS2113 quiz (by: Monday 9pm)
3.[E][ ] CS1010 PE (at: tomorrow)
4.[T][ ] CS1010 Invigilation
--------------------------------------
find cs1010
--------------------------------------
Here are the matching tasks in your list:
3.[E][ ] CS1010 PE (at: tomorrow)
4.[T][ ] CS1010 Invigilation
--------------------------------------
Deletes a task from the list.
Format: delete [INDEX]
Sample:
list
--------------------------------------
Beep beep, listing out the tasks....Loading.....
1.[T][X] Hao Yi: Answer CS2113 Tutorial questions
2.[D][ ] weekly CS2113 quiz (by: Monday 9pm)
3.[E][X] CS2113 lecture (at: Friday)
4.[E][ ] CS1010 PE (at: tomorrow)
--------------------------------------
delete 3
--------------------------------------
Noted. I've removed this task:
[E][X] CS2113 lecture (at: Friday)
Beep boop, now you have 3 tasks
--------------------------------------
Duke data is saved to the computer automatically when the programme exits. There is no need to save manually.
Duke data is saved as a plaintext file at [JAR file location]/data/userData.txt. Advanced users are welcome to update data directly by editing that data file.
Caution: If your changes to the data file makes it format invalid, there may be data loss.
Q: How do I transfer my data to another computer?
A: Duke is designed with portability in mind. Simply copy the JAR file and the data folder over to your other computer and you are good to go.
| Action | Format | Example |
|---|---|---|
| Add a deadline | deadline [TASK] /by [DATE] |
deadline team project /by tomorrow |
| Add an event | event [TASK] /at [DATE] |
event April Fool's Day /at 1st April |
| Add a Todo | todo [TASK] |
todo Do Luminus Quiz |
| Delete a task | delete [INDEX] |
delete 1 |
| Exit application | bye |
bye |
| Find tasks by keyword | find [KEYWORD] |
find assignment |
| View help | help |
help |
| List tasks | list |
list |
| Mark a task as done | mark [INDEX] |
mark 1 |
| Mark a task as undone | unmark [INDEX] |
unmark 1 |
Credits to Owen Leong (owenl131) for inspiration for some functionality of Duke.
The format of UserGuide is adapted from Owen Leong as well