Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
356f7d2
Duke class: implement level 1 functionalities
TeddYE Jan 23, 2022
5741e28
Duke class: Implement level 2 functionalities
TeddYE Jan 23, 2022
ad6aed9
Duke class: remove redundant codes
TeddYE Jan 23, 2022
44b496e
Duke class: Implement Level-3 functionalities
TeddYE Jan 24, 2022
ae02dd3
Duke class: implement Level-4 functionalities
TeddYE Jan 24, 2022
bee688a
Update i/o files for testing
TeddYE Jan 24, 2022
6fe8ceb
Duke class: implement level-5 functionalities
TeddYE Jan 29, 2022
3910a1f
Duke class: implement level-6 functionalities
TeddYE Jan 29, 2022
8874be8
Implement A-Enums functionalities
TeddYE Jan 29, 2022
042bfe3
Add parser class to parse the user input into different commands
TeddYE Jan 30, 2022
256377e
Duke class: implement level-7 functionalities
TeddYE Feb 1, 2022
7e35173
Merge pull request #1 from TeddYE/branch-Level-7
TeddYE Feb 1, 2022
0762e16
Implement level-8 functionalities
TeddYE Feb 1, 2022
9fe0dc0
Merge pull request #2 from TeddYE/branch-Level-8
TeddYE Feb 1, 2022
325bed9
Refactor the code to extract out closely related code as classes
TeddYE Feb 1, 2022
ebfabea
Merge pull request #3 from TeddYE/branch-Level-8
TeddYE Feb 1, 2022
c0f4f9e
Organize the classes into suitable java packages
TeddYE Feb 1, 2022
96e5e0a
Add JUnit tests to test the behavior of the code
TeddYE Feb 1, 2022
3aad3db
Package the app as an executable JAR file
TeddYE Feb 2, 2022
53c09c9
Add JavaDoc comments to the code
TeddYE Feb 2, 2022
3b36a90
Reorganize the directories
TeddYE Feb 2, 2022
76d9ffa
Merge pull request #4 from TeddYE/branch-A-JavaDoc
TeddYE Feb 2, 2022
b4ab6bc
Merge branch 'master' of https://github.com/TeddYE/ip
TeddYE Feb 2, 2022
4c48792
Implement Level-9 functionalities
TeddYE Feb 2, 2022
f4e7989
Merge pull request #6 from TeddYE/branch-Level-9
TeddYE Feb 2, 2022
fb5007d
Use Gradle to automate some of the build tasks of the project
TeddYE Feb 5, 2022
91075bd
Merge pull request #7 from TeddYE/add-gradle-support
TeddYE Feb 5, 2022
746eb08
Implement Level-10 functionalities
TeddYE Feb 9, 2022
7cae665
Merge pull request #8 from TeddYE/branch-Level-10
TeddYE Feb 9, 2022
eecd61c
Improve code quality based on Code Quality topics
TeddYE Feb 11, 2022
d1ed7b3
Merge pull request #9 from TeddYE/branch-A-CodeQuality
TeddYE Feb 11, 2022
8ad414d
Use Assertions
TeddYE Feb 11, 2022
28b855f
Merge pull request #10 from TeddYE/branch-A-Assertions
TeddYE Feb 11, 2022
c8a15da
Implement undo command for users
TeddYE Feb 12, 2022
1bd155d
Add user guide
TeddYE Feb 21, 2022
108359b
Merge pull request #12 from TeddYE/branch-UserGuide
TeddYE Feb 21, 2022
c488e8e
Set theme jekyll-theme-minimal
TeddYE Feb 21, 2022
ce71260
Set theme jekyll-theme-dinky
TeddYE Feb 21, 2022
4aad472
Update comments in accordance to coding standards
TeddYE Feb 21, 2022
13a66ce
Add ui picture
TeddYE Feb 21, 2022
67f7f67
Set theme jekyll-theme-dinky
TeddYE Feb 21, 2022
befb8c4
Change ui picture file name
TeddYE Feb 21, 2022
61216bf
Merge branch 'master' of https://github.com/TeddYE/ip
TeddYE Feb 21, 2022
13f4072
Update main class name in build.gradle
TeddYE Feb 21, 2022
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
66 changes: 66 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
plugins {
id 'java'
id 'application'
id 'checkstyle'
id "com.github.johnrengelman.shadow" version "6.0.0"
}

group 'org.example'
version '1.0-SNAPSHOT'

repositories {
mavenCentral()
}

sourceSets {
main {
java {
srcDirs = ['src']
}
}

}

dependencies {
compile 'junit:junit:4.12'
}

run {
enableAssertions = true
}

test {
useJUnitPlatform()
}

dependencies {
implementation 'org.jetbrains:annotations:20.1.0'
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.4.0'
testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.4.0'
implementation 'org.junit.jupiter:junit-jupiter-api:5.5.1'
String javaFxVersion = '11'

implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'linux'
compile group: 'org.testng', name: 'testng', version: '6.11'
}

checkstyle {
toolVersion = '8.23'
}

run{
standardInput = System.in
}

mainClassName ="main.duke.gui.Launcher"
4 changes: 4 additions & 0 deletions data/duke.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
D~1~d1~1111-11-11 1111
T~1~t1
E~0~e1~1111-11-11 1212
D~0~d2~1111-11-11 1111
135 changes: 121 additions & 14 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,136 @@
# User Guide
Duke bot is a chat bot designed to be used via a command line interface(CLI) with the benefits of using a graphical user interface(GUI).

## Features
## Features
>list : prints the list of stored tasks<br>
bye : terminates the program<br>
todo [your task input] : adds a todo type task<br>
event [your task input] /at [YYYY-MM-DD hhmm]: adds an event type task<br>
deadline [your task input] /by [YYYY-MM-DD hhmm]: adds a deadline type task<br>
delete[number] : deletes the selected task<br>
mark[number] : mark the selected task as done<br>
unmark[number] : mark the selected task as not done<br>
find [search string] : finds tasks that match the string description<br>
undo : undo the previous command<br>

### Feature-ABC
### `list` - prints the list of stored tasks

Description of the feature.

### Feature-XYZ
Example of usage:

Description of the feature.
`list`

## Usage
Expected outcome:

>1.[T] [X] sample_todo
2.[D] [ ] sample_deadline 2020-11-11 1200
3.[T] [ ] sample_todo_2

### `bye` - terminates the program


Example of usage:

`bye`

Expected outcome:

`Bye. Hope to see you again soon!`

### `todo` - adds a todo type task

Example of usage:

`todo sample_todo`

Expected outcome:

>Got it. I've added this task: <br>
[T][X] sample_todo<br>
You now have 1 tasks in your list

### `event` - adds an event type task

Example of usage:

`event sample_event /at 2020-01-01 1111`

Expected outcome:

>Got it. I've added this task:<br>
[E][X] sample_event 2020-11-11 1200
You now have 1 tasks in your list

### `deadline` - adds a deadline type task

Example of usage:

`deadline wakeup /by 2020-01-01 1111`

Expected outcome:

### `Keyword` - Describe action
>Got it. I've added this task:<br>
> [D][X] sample_deadline 2020-11-11 1200
>You now have 1 tasks in your list

Describe the action and its outcome.
### `delete` - deletes the selected task

Example of usage:
Example of usage:

`keyword (optional arguments)`
`delete 1`

Expected outcome:

Description of the outcome.
>Noted. I've removed this task:<br>
[T][X] sample_todo
You now have 0 tasks in your list

### `mark` - mark the selected task as done

Describe action and its outcome.

Example of usage:

`mark 1`

Expected outcome:

>Nice! I've marked this task as done:<br>
[T][X] sample

### `unmark` - mark the selected task as not done

Describe action and its outcome.

Example of usage:

`unmark 1`

Expected outcome:

>Nice! I've marked this task as not done:<br>
[T][ ] sample

### `find` - finds tasks that match the string description

Example of usage:

`find sample`

Expected outcome:

>Here are the matching tasks in your list:<br>
> 1. [T][X] sample_todo
> 2. [T][X] sample_todo_2

### `undo` - undo the previous command

Example of usage:

`undo`

Expected outcome:

```
expected output
```
>Undo task successfully!<br>
> 1. [T][X] sample_todo
> 2. [T][X] sample_todo_2
Binary file added docs/Ui.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
theme: jekyll-theme-dinky
1 change: 1 addition & 0 deletions duke.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
T|0|1
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 6 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#Tue Feb 23 16:47:37 SGT 2021
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
Loading