Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 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
3625838
Rename, Greet, Exit
jhwan0707 Jan 27, 2025
80f4f23
Echo
jhwan0707 Jan 27, 2025
2b997b1
Add, List
jhwan0707 Jan 28, 2025
0635185
Mark as Done
jhwan0707 Jan 29, 2025
2df5b99
ToDos, Events, Deadlines
jhwan0707 Jan 31, 2025
52c7599
Automated Text UI Testing
jhwan0707 Jan 31, 2025
2841546
Handle Errors
jhwan0707 Jan 31, 2025
e30a5d9
Delete
jhwan0707 Jan 31, 2025
b29de72
no message
jhwan0707 Feb 20, 2025
55e1bbe
Save the tasks in the hard disk automatically whenever the task list …
jhwan0707 Feb 21, 2025
969ec0d
Dates and Times
jhwan0707 Feb 22, 2025
9c11eb3
Ui class
jhwan0707 Feb 22, 2025
ef0c6b1
A-MoreOOP
jhwan0707 Feb 23, 2025
0a4ea80
Organize into packages
jhwan0707 Feb 24, 2025
97698bb
Merge branch 'add-gradle-support'
jhwan0707 Feb 24, 2025
d76bc3b
Gradle stuff
jhwan0707 Feb 25, 2025
58a2f75
ignore files
jhwan0707 Feb 25, 2025
77a07c1
Add JUnit Tests for parser and ui
jhwan0707 Feb 25, 2025
4b94ab2
no message
jhwan0707 Feb 25, 2025
f3f3f4e
Add JavaDoc Comments to johan folder
jhwan0707 Feb 26, 2025
63ae7b1
fixed coding standard
jhwan0707 Feb 26, 2025
c5445da
Created FindCommand class
jhwan0707 Feb 26, 2025
3b030ad
Implemented find command
jhwan0707 Feb 26, 2025
b8bcf63
Level 10. GUI
jhwan0707 Feb 27, 2025
2f4ab0d
Enhance DialogBox styling with adjusted padding
jhwan0707 Feb 27, 2025
4ddbd0b
Add timestamp to shadowJar output filename
jhwan0707 Feb 27, 2025
dcc5b8c
Add assertions to Johan class for key assumptions
jhwan0707 Feb 27, 2025
4b54522
Extract task loading into a separate method in Johan
jhwan0707 Feb 27, 2025
41cea23
Add placeholder for Streams in Johan’s executeCommand
jhwan0707 Feb 27, 2025
fd6af2d
Merge pull request #2 from jhwan0707/branch-A-Assertions
jhwan0707 Feb 27, 2025
4e9fe55
Merge branch 'master' into branch-A-CodeQuality
jhwan0707 Feb 27, 2025
9fd3bd6
Merge A-Streams branch to add Streams placeholder
jhwan0707 Feb 27, 2025
faad1d0
Fix mistake for A-CodeQuality
jhwan0707 Feb 27, 2025
a91ca69
Updating Task.java
jhwan0707 Feb 27, 2025
fc23e09
Add task sorting functionality to Johan
jhwan0707 Feb 27, 2025
8481439
Added Ui.png under docs folder
jhwan0707 Feb 27, 2025
7985e9f
Add user guide to docs/README.md for Johan
jhwan0707 Mar 1, 2025
27611c9
feat(ui): add command hint to welcome message
jhwan0707 Mar 1, 2025
71f2c4a
fix(command): clarify sort command confirmation message
jhwan0707 Mar 1, 2025
6806f67
docs(readme): add sort example to user guide
jhwan0707 Mar 1, 2025
f96cb0c
docs(readme): add header comment
jhwan0707 Mar 1, 2025
2f9c514
docs(readme): fix quick start wording
jhwan0707 Mar 1, 2025
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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,5 @@ bin/

/text-ui-test/ACTUAL.TXT
text-ui-test/EXPECTED-UNIX.TXT
Johan.class
test_johan.txt
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Duke project template
# johan.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.

Expand All @@ -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.
1. 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:
1. After that, locate the `src/main/java/johan.Duke.java` file, right-click it, and choose `Run johan.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
____ _
Expand Down
77 changes: 77 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
plugins {
id 'java'
id 'application'
id 'checkstyle'
id 'com.github.johnrengelman.shadow' version '7.1.2'
}

repositories {
mavenCentral()
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
}

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'
implementation group: 'com.joestelmach', name: 'natty', version: '0.13'
checkstyle('com.puppycrawl.tools:checkstyle:10.12.7') {
exclude group: 'com.google.collections', module: 'google-collections'
}
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("johan.launcher.Launcher")
}

shadowJar {
archiveBaseName = "johan"
archiveClassifier = null
archiveFileName = 'johan.jar'
mergeServiceFiles()
archiveVersion.set(new Date().format('yyyyMMdd-HHmmss'))
archiveFileName = "johan-${archiveVersion.get()}.jar"
}

run {
standardInput = System.in
enableAssertions = true
}

test {
useJUnitPlatform()
}

checkstyle {
toolVersion = '10.2'
configFile = file('config/checkstyle/checkstyle.xml')
ignoreFailures = true
showViolations = true
}
Loading