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 (use the exact version), update Intellij to the most recent version.
- Configure Intellij for JDK 11, as described here.
- Import the project as a Gradle project, as described here.
- Verify the set up: After the importing is complete, locate the
src/main/java/seedu/duke/Duke.java
file, right-click it, and chooseRun Duke.main()
. If the setup is correct, you should see something like the below:> Task :compileJava > Task :processResources NO-SOURCE > Task :classes > Task :Duke.main() Hello! Type 'start' to start the CLIrcuit Assistant
Type
start
and press enter to let the execution proceed to the end.
Build automation using Gradle
- This project uses Gradle for build automation and dependency management. It includes a basic build script as well (i.e. the
build.gradle
file). - If you are new to Gradle, refer to the Gradle Tutorial at se-education.org/guides.
Testing
I/O redirection tests
- To run I/O redirection tests (aka Text UI tests), navigate to the
text-ui-test
and run theruntest(.bat/.sh)
script.
JUnit tests
- A skeleton JUnit test (
src/test/java/seedu/duke/DukeTest.java
) is provided with this project template. - If you are new to JUnit, refer to the JUnit Tutorial at se-education.org/guides.
Checkstyle
- A sample CheckStyle rule configuration is provided in this project.
- If you are new to Checkstyle, refer to the Checkstyle Tutorial at se-education.org/guides.
CI using GitHub Actions
The project uses GitHub actions for CI. When you push a commit to this repo or PR against it, GitHub actions will run automatically to build and verify the code as updated by the commit/PR.
Documentation
/docs
folder contains a skeleton version of the project documentation.
Steps for publishing documentation to the public:
- If you are using this project template for an individual project, go your fork on GitHub.
If you are using this project template for a team project, go to the team fork on GitHub. - Click on the
settings
tab. - Scroll down to the
GitHub Pages
section. - Set the
source
asmaster branch /docs folder
. - Optionally, use the
choose a theme
button to choose a theme for your documentation.