Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Latest PR #267

Open
wants to merge 48 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
cba3a84
Level-0
firwer Jan 24, 2023
fa4c68e
Level 0: Greet
firwer Jan 25, 2023
b2bac14
Level 1: Greet, Echo, Exit
firwer Jan 25, 2023
fe1d443
Level 2: Add, List
firwer Jan 25, 2023
3cefb71
Level 3: Mark as done
firwer Jan 25, 2023
31390cc
A-CodingStandard: format code to meet requirement
firwer Jan 29, 2023
6e29b65
Level-4 - feat: add todos, deadlines, events tracking
firwer Jan 30, 2023
431c106
A-TextUiTesting
firwer Jan 30, 2023
0d61ab1
refactor: introduce display class to handle all CLI display requirements
firwer Jan 31, 2023
30316f2
docs: add param docs for display class functions
firwer Jan 31, 2023
a66e986
Update README.md
firwer Jan 31, 2023
cac0c9e
Update README.md
firwer Jan 31, 2023
ba94855
chore: Rename methods to PASCAL and documentation of functions
firwer Feb 1, 2023
6ae1c34
Merge branch 'master' of https://github.com/firwer/ip
firwer Feb 1, 2023
031dd31
A-CodeQuality: Minor adjustments to ensure coding standards are met
firwer Feb 2, 2023
73eff72
A-CodeQuality: Add-on to previous commit for further standard improve…
firwer Feb 2, 2023
7307fef
refactor: Add Command class to handle string parsing
firwer Feb 3, 2023
d7704a0
Level-5: Error handling and display improvements
firwer Feb 3, 2023
2d9626a
refactor: Create exception classes for proper handling of errors
firwer Feb 6, 2023
498529e
Merge branch 'branch-Level-5'
firwer Feb 6, 2023
ee57ec6
refactor: grouped class files into packages
firwer Feb 6, 2023
673838f
Level-6: Implement delete function
firwer Feb 13, 2023
777b8be
fix: Task completion symbol not showing correctly
firwer Feb 13, 2023
82c462c
refactor: Massive overhaul of duplicated code through abstraction
firwer Feb 13, 2023
440b0ee
Level-7: Add save feature
firwer Feb 13, 2023
563caac
Merge branch 'branch-Level-6'
firwer Feb 13, 2023
af2037a
Level-7 Merge with origin
firwer Feb 13, 2023
1eb35ee
A-Jar: Create .jar file for Sage
firwer Feb 14, 2023
a536370
refactor: Merge unmark and mark function into one
firwer Feb 14, 2023
06b0d72
fix: Exception class not showing msg but stacktrace
firwer Feb 14, 2023
12ca1b7
fix: Introduce data persistence from previous session
firwer Feb 15, 2023
7c4c04d
A-MoreOOP - Refactor: Abstract main class components to Ui
firwer Feb 20, 2023
81f2f77
feat: Time parsing for deadline in dd-MM-yyyy or yyyy-MM-dd formats
firwer Feb 20, 2023
7c26ed1
Merge pull request #1 from firwer/branch-Level-8
firwer Feb 20, 2023
2576cdb
Level-9: Add find feature with exception handling
firwer Feb 20, 2023
470a5cf
Merge pull request #2 from firwer/branch-Level-9
firwer Feb 20, 2023
eab3f72
A-JavaDoc - docs: Add missing JavaDocs to classes and methods
firwer Feb 20, 2023
2fa5d52
fix: Delete operation updates file before item is removed from list
firwer Feb 23, 2023
fa99405
A-UserGuide: Add user guide
firwer Feb 24, 2023
567d1df
Update README.md
firwer Feb 24, 2023
473b696
docs: Graphic out of place
firwer Feb 24, 2023
a0a6a00
Merge branch 'master' of https://github.com/firwer/ip
firwer Feb 24, 2023
beb4883
Merge branch 'master' into branch-A-JavaDoc
firwer Feb 24, 2023
fc36c1d
Merge pull request #3 from firwer/branch-A-JavaDoc
firwer Feb 24, 2023
b35ecb4
Merge branch 'master' into branch-Level-9
firwer Feb 24, 2023
4e377f1
Merge pull request #4 from firwer/branch-Level-9
firwer Feb 24, 2023
56953e1
chore: Code quality improvement
firwer Feb 24, 2023
4b8645b
refactor: final cleanup for release
firwer Mar 2, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
199 changes: 175 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,175 @@
# 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 11, 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 11** (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
____ _
| _ \ _ _| | _____
| | | | | | | |/ / _ \
| |_| | |_| | < __/
|____/ \__,_|_|\_\___|
```
# SAGE iP project

# User Guide For Sage Task Manager
─────────────────────────────────────────────────────────────
─██████████████─██████████████─██████████████─██████████████─
─██░░░░░░░░░░██─██░░░░░░░░░░██─██░░░░░░░░░░██─██░░░░░░░░░░██─
─██░░██████████─██░░██████░░██─██░░██████████─██░░██████████─
─██░░██─────────██░░██──██░░██─██░░██─────────██░░██─────────
─██░░██████████─██░░██████░░██─██░░██─────────██░░██████████─
─██░░░░░░░░░░██─██░░░░░░░░░░██─██░░██──██████─██░░░░░░░░░░██─
─██████████░░██─██░░██████░░██─██░░██──██░░██─██░░██████████─
─────────██░░██─██░░██──██░░██─██░░██──██░░██─██░░██─────────
─██████████░░██─██░░██──██░░██─██░░██████░░██─██░░██████████─
─██░░░░░░░░░░██─██░░██──██░░██─██░░░░░░░░░░██─██░░░░░░░░░░██─
─██████████████─██████──██████─██████████████─██████████████─
─────────────────────────────────────────────────────────────

## Features

### Add Task (Todo, Event or Deadline)

This feature allows the user to add a task to the task list. The user can add a task to the application.

### Delete A Task

To delete a task from the application

### List All Tasks

To list all tasks in the application

### Find A Task

To find tasks with a matching query in the task description.

### Mark/Unmark Task

You can mark/unmark a task as done/not done in the application.

### Data Persistence Support

Your previous session data will be automatically stored (in ./data/sage.txt) and restored (If applicable)

## Usage

### `Todo` - Add a Todo Task

Adds a Todo task to the task list.

Example of usage:

`todo buy groceries`

Expected outcome:

```
Got it. I've added this task:
[T][ ] buy groceries
Now you have X tasks in the list.
```

### `deadline` - Add a Deadline Task

Adds a Deadline task to the task list.

Example of usage:

`deadline submit report /by 2022-03-31`

Expected outcome:

```
Got it. I've added this task:
[D][ ] submit report (by: 31 Mar 2022)
Now you have X tasks in the list.
```

### `event` - Add an Event Task

Adds an Event task to the task list.

Example of usage:

`event project meeting /from 2022-04-01 /to 2022-04-02`

Expected outcome:

```
Got it. I've added this task:
[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
Now you have X tasks in the list.
```

### `delete` - Delete a Task

Deletes the specified task from the task list.

Example of usage:

`delete 2`

Expected outcome:

```
Noted. I've removed this task:
[D][ ] submit report (by: 31 Mar 2022)
Now you have X tasks in the list.
```

### `find` - Find Tasks

Displays a list of tasks that match the specified keyword.

Example of usage:

`find meeting`

Expected outcome:

```
Found 1 matching queries!
1.[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
```

### `list` - List All Tasks

Displays a list of all tasks in the task list.

Example of usage:

`list`

Expected outcome:

```
Here are the tasks in your list:
1.[T][ ] buy groceries
2.[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
```

### `mark` - Mark a Task as Done

Marks the specified task as done.

Example of usage:

`mark 1`

Expected outcome:

```
Nice! I've marked this task as done:
[T][X] buy groceries
```

### `unmark` - Unmark a Task as Undone

Marks the specified task as undone.

Example of usage:

`unmark 1`

Expected outcome:

```
Noted. I've marked this task as undone:
[T][ ] buy groceries
```

## Other Commands

### `bye` - Quit the application

Exit the application
4 changes: 4 additions & 0 deletions data/sage.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[T][ ] read book
[D][ ] return book (by: June 6th)
[T][ ] aasdadsada
[D][X] ajsdkaakd,as (by: wkjsdas)
155 changes: 143 additions & 12 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,160 @@
# User Guide
# User Guide For Sage Task Manager

## Features
## Features

### Feature-ABC
### Add Task (Todo, Event or Deadline)

Description of the feature.
This feature allows the user to add a task to the task list. The user can add a task to the application.

### Feature-XYZ
### Delete A Task

Description of the feature.
To delete a task from the application

### List All Tasks

To list all tasks in the application

### Find A Task

To find tasks with a matching query in the task description.

### Mark/Unmark Task

You can mark/unmark a task as done/not done in the application.

### Data Persistence Support

Your previous session data will be automatically stored (in ./data/sage.txt) and restored (If applicable)

## Usage

### `Keyword` - Describe action
### `Todo` - Add a Todo Task

Describe the action and its outcome.
Adds a Todo task to the task list.

Example of usage:
Example of usage:

`keyword (optional arguments)`
`todo buy groceries`

Expected outcome:

Description of the outcome.
```
Got it. I've added this task:
[T][ ] buy groceries
Now you have X tasks in the list.
```

### `deadline` - Add a Deadline Task

Adds a Deadline task to the task list.

Example of usage:

`deadline submit report /by 2022-03-31`

Expected outcome:

```
expected output
Got it. I've added this task:
[D][ ] submit report (by: 31 Mar 2022)
Now you have X tasks in the list.
```

### `event` - Add an Event Task

Adds an Event task to the task list.

Example of usage:

`event project meeting /from 2022-04-01 /to 2022-04-02`

Expected outcome:

```
Got it. I've added this task:
[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
Now you have X tasks in the list.
```

### `delete` - Delete a Task

Deletes the specified task from the task list.

Example of usage:

`delete 2`

Expected outcome:

```
Noted. I've removed this task:
[D][ ] submit report (by: 31 Mar 2022)
Now you have X tasks in the list.
```

### `find` - Find Tasks

Displays a list of tasks that match the specified keyword.

Example of usage:

`find meeting`

Expected outcome:

```
Found 1 matching queries!
1.[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
```

### `list` - List All Tasks

Displays a list of all tasks in the task list.

Example of usage:

`list`

Expected outcome:

```
Here are the tasks in your list:
1.[T][ ] buy groceries
2.[E][ ] project meeting (from: 2022-04-01 to: 2022-04-02)
```

### `mark` - Mark a Task as Done

Marks the specified task as done.

Example of usage:

`mark 1`

Expected outcome:

```
Nice! I've marked this task as done:
[T][X] buy groceries
```

### `unmark` - Unmark a Task as Undone

Marks the specified task as undone.

Example of usage:

`unmark 1`

Expected outcome:

```
Noted. I've marked this task as undone:
[T][ ] buy groceries
```

## Other Commands

### `bye` - Quit the application

Exit the application
10 changes: 0 additions & 10 deletions src/main/java/Duke.java

This file was deleted.

3 changes: 3 additions & 0 deletions src/main/java/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Main-Class: sage.main.Sage

Loading