User Guide
DukePro is a desktop app for managing tasks, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).
Setting up in Intellij
Prerequisites: JDK 11, update Intellij to the most recent version.
- Open Intellij (if you are not in the welcome screen, click
File>Close Projectto close the existing project first) - Open the project into Intellij as follows:
- Click
Open. - Select the project directory, and click
OK. - If there are any further prompts, accept the defaults.
- Click
- Configure the project to use JDK 11 (not other versions) as explained in here.
In the same dialog, set the Project language level field to theSDK defaultoption. - After that, locate the
src/main/java/Launcher.javafile, right-click it, and chooseRun Launcher.main()(if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:

Quick Start
- Ensure you have Java
11or above installed in your computer. - Download the latest
duke.jarfrom here. - Copy the file to the folder you want to use as the home folder for your DukePro.
- Open Command Prompt and type
java -jar duke.jarto start the app. - Type the command in the input box and press Enter to execute it.
Some example commands you can try:todo borrow book: Add todo taskborrow bookto the task list.event project meeting /at 2/12/2021 1700: Add eventproject meeting (at Dec 2 2021 1700)to the task list.deadline return book /by 2/12/2021 1800: Add deadlinereturn book (by Dec 2 2021 1800)to the task list.list: List all tasks.done 2: Mark the 2nd task as done.delete 2: Delete the 2nd task in the list.find book: Search the task with keyword ofbook.viewschedules 2/12/2021: Displays the schedule for the specified dateDec 2 2021.bye: Exits the app.
Features
Add todo: todo
Adds a todo task to the DukePro task list.
Format: todo DESCRIPTION
- The
DESCRIPTIONis the detail of the task. - The
DESCRIPTIONcannot be empty.
Example:
todo borrow book
Adding an event: event
Adds an event to the DukePro task list.
Format: event DESCRIPTION /at date/month/year time
- The
DESCRIPTIONis the detail of the event. - Use
/atbetweenDESCRIPTIONanddatetime - The
DESCRIPTIONanddate/month/year timecannot be empty.
Example:
event project meeting /at 2/12/2021 1700
Adding a deadline: deadline
Adds a deadline to the DukePro task list.
Format: deadline DESCRIPTION /by date/month/year time
- The
DESCRIPTIONis the detail of the deadline. - Use
/bybetweenDESCRIPTIONanddatetime - The
DESCRIPTIONanddate/month/year timecannot be empty.
Example:
deadline return book /by 2/12/2021 1800
Show tasks: list
To show all the tasks in the list.
Format: list
Example:
list
Mark as done: done
To mark a task as done.
Format: done INDEX
- Mark the task as done at the specified
INDEX. The index refers to the index number shown in the displayed task list. - The index must be a positive integer 1, 2, 3, …
- The index cannot be empty.
Example:
done 2
Delete a task: delete
To delete a task in the list.
Format: delete INDEX
- Delete the task at the specified
INDEX. The index refers to the index number shown in the displayed task list. - The index must be a positive integer 1, 2, 3, …
- The index cannot be empty.
Example:
delete 2
Search tasks: find
Search the task with the keyword.
Format: find KEYWORD
- The
KEYWORDis the keyword to search. - The
KEYWORDcannot be empty.
Example:
find book
View Schedules: viewschedules
Displays the schedule for the specified date.
Format: viewschedules dd/mm/yyy
Example:
viewschedules 2/12/2021
Exiting the program: bye
Exits the program.
Format: bye
Example:
bye
FAQ
Q: How do I transfer my data to another Computer?
A: Without running the program, just copy the tasks.txt in the data folder.
To run and show the data in another computer, you need to follow the Quick Start above, and copy the tasks.txt to the data folder.
Command Summary
| Action | Format, Examples |
|---|---|
| Todo | todo DESCRIPTION e.g.,todo borrow book |
| Event | event DESCRIPTION /at date/month/year time e.g., event project meeting /at 2/12/2021 1700 |
| Deadline | deadline DESCRIPTION /by date/month/year time e.g., deadline return book /by 2/12/2021 1800 |
| List | list e.g., list |
| Done | done INDEX e.g., done 2 |
| Delete | delete INDEX e.g., delete 2 |
| Find | find KEYWORD e.g., find book |
| View schedules | viewschedules dd/mm/yyy e.g., viewschedules 2/12/2021 |
| Bye | bye e.g., bye |