Skip to content

Commit

Permalink
Updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
TheDinos committed Sep 24, 2024
1 parent 07d46c8 commit 763aa12
Showing 1 changed file with 70 additions and 24 deletions.
94 changes: 70 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,70 @@
# Duke project template

This is a project template for a greenfield Java project. It's named after the Java mascot _Duke_. Given below are instructions on how to use it.

## Setting up in Intellij

Prerequisites: JDK 17, update Intellij to the most recent version.

1. Open Intellij (if you are not in the welcome screen, click `File` > `Close Project` to close the existing project first)
1. Open the project into Intellij as follows:
1. Click `Open`.
1. Select the project directory, and click `OK`.
1. If there are any further prompts, accept the defaults.
1. Configure the project to use **JDK 17** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).<br>
In the same dialog, set the **Project language level** field to the `SDK default` option.
3. After that, locate the `src/main/java/Duke.java` file, right-click it, and choose `Run Duke.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:
```
Hello from
____ _
| _ \ _ _| | _____
| | | | | | | |/ / _ \
| |_| | |_| | < __/
|____/ \__,_|_|\_\___|
```
# JEFF Task Chatbot

**JEFF** is a temperamental Java chatbot who (begrudgingly) keeps track of your tasks!

## Getting Started with IntelliJ

**Prerequisites:** JDK 17 and the latest version of IntelliJ IDEA.

### Setting Up the Project
1. **Open IntelliJ IDEA**:
- If you’re not on the welcome screen, click `File` > `Close Project` to close any existing project first.

2. **Open the Project**:
- Click `Open`.
- Select the project directory and click `OK`.
- Accept any further prompts with the default options.

3. **Configure JDK**:
- Set up the project to use **JDK 17** as explained [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).
- Set the **Project language level** field to `SDK default`.

4. **Run JEFF**:
- Locate `src/main/java/Jeff.java`.
- Right-click the file and select `Run Jeff.main()` (if you see compile errors, try restarting the IDE).
- If set up correctly, you should see JEFF’s initial output in the console.

## How to Use JEFF

JEFF can manage three types of tasks:

### Task Types
1. **Todo**:
- **Purpose**: Tracks non-time-sensitive tasks.
- **Command**: `todo [description]`

2. **Deadline**:
- **Purpose**: Tracks tasks due by a specific date.
- **Command**: `deadline [description] /by [yyyy-MM-dd]`

3. **Event**:
- **Purpose**: Tracks tasks happening within a specific date range.
- **Command**: `event [description] /from [yyyy-MM-dd] /to [yyyy-MM-dd]`

### Commands Overview
You can manipulate or view your tasks using the following commands:

1. **List Tasks**:
- **Purpose**: Displays all tasks you've added.
- **Command**: `list`
- **Example Output**:
```
1. [D][ ] Finish homework (by: Aug 9 1990)
```
2. **Mark/Unmark Tasks**:
- **Purpose**: Mark a task as done or undone.
- **Commands**:
- `mark [task index]`
- `unmark [task index]`
- **Example Output**:
- `Marked task: [D][X] Finish homework (by: Aug 9 1990)`
- `Unmarked task: [D][ ] Finish homework (by: Aug 9 1990)`
3. **Delete a Task**:
- **Purpose**: Removes a task from your list.
- **Command**: `delete [task index]`
## Data Storage
JEFF automatically saves your tasks to a text file located in the `data` folder. **Note**: Please do not manually edit the text file, as incorrect formatting may cause data loss.

0 comments on commit 763aa12

Please sign in to comment.