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

[brianchoon] iP #620

Open
wants to merge 77 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
68c58c1
Add Gradle support
May 24, 2020
03523ec
Bump gradle and lib version
Eclipse-Dominator Aug 5, 2023
81a9c53
build.gradle: Prevent generating a second JAR file
aureliony Jul 16, 2024
0433ab7
Rename main class and add greeting and goodbye
icantshootfloorballs Aug 23, 2024
949bb0a
Add Scanner
icantshootfloorballs Aug 23, 2024
d790f91
Add indentation for bot messages
icantshootfloorballs Aug 23, 2024
25cfc2b
Add echo
icantshootfloorballs Aug 23, 2024
9f59844
Add array to store tasks
icantshootfloorballs Aug 23, 2024
82763cb
Add list command
icantshootfloorballs Aug 23, 2024
923a306
Implement Task class
icantshootfloorballs Aug 23, 2024
ef3d1a2
Add support to mark done/undone
icantshootfloorballs Aug 23, 2024
63144be
Refactor toString
icantshootfloorballs Aug 23, 2024
c6ad442
Add support for different tasks
icantshootfloorballs Aug 23, 2024
192abce
Add support for commands for each task type
icantshootfloorballs Aug 23, 2024
f15d552
Implement I/O redirection
icantshootfloorballs Aug 23, 2024
9dc1b82
Implement error handling in main code
icantshootfloorballs Aug 23, 2024
072bb1e
Implement ArrayList
icantshootfloorballs Aug 23, 2024
adad10c
Add support for deleting tasks
icantshootfloorballs Aug 23, 2024
00753c4
Implement enums for commands
icantshootfloorballs Aug 23, 2024
3b1deaf
Add support for local storage of tasks
icantshootfloorballs Sep 2, 2024
8999af6
Merge branch-Level-7 into master
icantshootfloorballs Sep 2, 2024
99e1418
Implement Date and Time support
icantshootfloorballs Sep 2, 2024
53c776c
Merge branch-Level-8 into master
icantshootfloorballs Sep 2, 2024
2e738cf
Implement TaskList class
icantshootfloorballs Sep 2, 2024
c187c24
Add Storage class
icantshootfloorballs Sep 2, 2024
416a09d
Refactor printList function
icantshootfloorballs Sep 2, 2024
752b750
Fix bug in printList
icantshootfloorballs Sep 2, 2024
8cacfc4
Refactor task functions
icantshootfloorballs Sep 2, 2024
6aa7ad4
Implement parser class
icantshootfloorballs Sep 2, 2024
aca6738
Implement UI class
icantshootfloorballs Sep 2, 2024
15eae9b
Merge branch-A-MoreOOP into master
icantshootfloorballs Sep 2, 2024
15e6262
Create package for devon files
icantshootfloorballs Sep 2, 2024
fdfdd9c
Merge branch-A-Packages into master
icantshootfloorballs Sep 2, 2024
034af89
Merge add-gradle-support into master
icantshootfloorballs Sep 2, 2024
4f09114
Add Gradle support for main
icantshootfloorballs Sep 2, 2024
6cbbdc1
Merge branch-A-Gradle into master
icantshootfloorballs Sep 2, 2024
f434250
Add JUnit tests for Todo and Deadline
icantshootfloorballs Sep 2, 2024
e73000d
Merge branch-A-JUnit into master
icantshootfloorballs Sep 2, 2024
c851ead
Set up shadowJar
icantshootfloorballs Sep 2, 2024
beb15ed
Merge branch-A-Jar into master
icantshootfloorballs Sep 2, 2024
b885b61
Add JavaDoc for all methods in all classes
icantshootfloorballs Sep 2, 2024
26d2128
Edit code to comply with coding standard
icantshootfloorballs Sep 3, 2024
70b9796
Implement search feature for task descriptions
icantshootfloorballs Sep 3, 2024
0fd5dba
Merge branch-A-JavaDoc into master
icantshootfloorballs Sep 3, 2024
8069a3f
Merge branch-A-CodingStandard into master
icantshootfloorballs Sep 3, 2024
7942579
Merge branch-Level-9 into master
icantshootfloorballs Sep 3, 2024
d174547
Add JavaDoc for all new methods
icantshootfloorballs Sep 3, 2024
3b533c3
Fix indentation for switch statements
icantshootfloorballs Sep 4, 2024
0c3a14b
Implement checkstyle
icantshootfloorballs Sep 9, 2024
8c61489
Merge branch-A-Checkstyle into master
icantshootfloorballs Sep 9, 2024
7fdac61
Fix all checkstyle errors
icantshootfloorballs Sep 9, 2024
e9310fb
Update build.gradle file
icantshootfloorballs Sep 10, 2024
f7703ac
Set up basic template GUI
icantshootfloorballs Sep 10, 2024
7522f2d
Rename Duke to Devon
icantshootfloorballs Sep 10, 2024
1423d8e
Implement one-way chat feature
icantshootfloorballs Sep 10, 2024
c970933
Implement two-way chat feature
icantshootfloorballs Sep 10, 2024
e31d826
Use FXML
icantshootfloorballs Sep 10, 2024
057a3ea
Complete implementation of GUI
icantshootfloorballs Sep 10, 2024
e393838
Merge branch-Level-10 into master
icantshootfloorballs Sep 10, 2024
3747276
Fix checkstyle errors
icantshootfloorballs Sep 10, 2024
6f8a98d
Remove extra backslash
icantshootfloorballs Sep 12, 2024
74d7e79
Main.java: Replace Duke reference with Devon
icantshootfloorballs Sep 12, 2024
29c64ca
Add assertions to ensure key assumptions hold in Devon bot
icantshootfloorballs Sep 12, 2024
5c06ee8
Add assertions to ensure key assumptions hold in Devon bot
icantshootfloorballs Sep 12, 2024
98b21a5
Remove redundant variables
icantshootfloorballs Sep 12, 2024
2490125
Add whitespace for readability
icantshootfloorballs Sep 12, 2024
94c82bd
Remove unused variables
icantshootfloorballs Sep 12, 2024
350c25a
Modify constant variables to be final
icantshootfloorballs Sep 12, 2024
8ec2fab
Merge pull request #1 from brianchoon/branch-A-Assertions
brianchoon Sep 12, 2024
64547f7
Merge remote-tracking branch 'origin/master' into branch-A-CodeQuality
icantshootfloorballs Sep 12, 2024
17ac8f0
Merge pull request #2 from brianchoon/branch-A-CodeQuality
brianchoon Sep 12, 2024
c607c8b
Add alias commands for todo, deadline, event
icantshootfloorballs Sep 12, 2024
3d1bf04
Merge branch-C-FriendlierSyntax into master
icantshootfloorballs Sep 12, 2024
4a459f9
Customise user and Devon's display pictures
icantshootfloorballs Sep 18, 2024
5c807b9
Update README.md to declare AI usage
icantshootfloorballs Sep 18, 2024
7a2c4ff
Add screenshot of product
icantshootfloorballs Sep 19, 2024
0761c16
Complete user guide
icantshootfloorballs Sep 19, 2024
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
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,6 @@ bin/

/text-ui-test/ACTUAL.TXT
text-ui-test/EXPECTED-UNIX.TXT

# Ignore the devon_tasks.txt file in the data directory
/data/devon_tasks.txt
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Prerequisites: JDK 17, update Intellij to the most recent version.
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:
3. After that, locate the `src/main/java/Devon.java` file, right-click it, and choose `Run Devon.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
____ _
Expand All @@ -22,3 +22,8 @@ Prerequisites: JDK 17, update Intellij to the most recent version.
| |_| | |_| | < __/
|____/ \__,_|_|\_\___|
```

## Disclaimer

I wrote all Javadoc comments by myself, then pasted them into ChatGPT to enhance and ensure correctness.
All other work here is my own.
61 changes: 61 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
plugins {
id 'java'
id 'application'
id 'checkstyle'
id 'com.github.johnrengelman.shadow' version '7.1.2'
}

repositories {
mavenCentral()
}

dependencies {
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.10.0'
testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.10.0'

String javaFxVersion = '17.0.7'

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'
}

test {
useJUnitPlatform()

testLogging {
events "passed", "skipped", "failed"

showExceptions true
exceptionFormat "full"
showCauses true
showStackTraces true
showStandardStreams = false
}
}

application {
mainClass.set("devon.Launcher")
}

shadowJar {
archiveBaseName = "devon"
archiveClassifier = null
}

run {
standardInput = System.in
}

checkstyle {
toolVersion = '10.2'
}
Loading