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.
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.notus/Notus.java
file, right-click it, and chooseRun Notus.main()
. If the setup is correct, you should see something like the below:> Task :compileJava UP-TO-DATE > Task :processResources NO-SOURCE > Task :classes UP-TO-DATE > Task :Notus.main() Welcome to NotUS! .-') _ .-') _ .-') ( OO ) ) ( OO) ) ( OO ). ,--./ ,--,' .-'),-----. / '._ ,--. ,--. (_)---\_) | \ | |\ ( OO' .-. '|'--...__)| | | | / _ | | \| | )/ | | | |'--. .--'| | | .-') \ :` `. | . |/ \_) | | | | | | | | |( OO ) '..`''.) | |\ | \ | | | | | | | | | `-' /.-._) \ | | \ | `' '-' ' | | (' '-'(_.-' \ / `--' `--' `-----' `--' `-----' `-----' Type "help" if you need to see a list of commands and their usages. Enter command:
- Type some word and press enter to let the execution proceed to the end.
- 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.
- To run I/O redirection tests (aka Text UI tests), navigate to the
text-ui-test
and run theruntest(.bat/.sh)
script.
- A skeleton JUnit test (
src/test/java/seedu/notus/NotusTest.java
) is provided with this project template. - If you are new to JUnit, refer to the JUnit Tutorial at se-education.org/guides.
- 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.
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.
/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.
- References were made to addressbook-level2 for the structure of the classes and packages. The structures have been modified to meet the needs of our application.
- Used Jcolor 3rd-party library.
- Used jansi 3rd-party library.
- 'NotUS' ASCII art code adapted from http://patorjk.com/software/taag/#p=display&f=Ghost&t=NotUS
- 'Bye' ASCII art code adapted from https://patorjk.com/software/taag/#p=display&f=Ghost&t=Bye
- Casper ASCII art code referenced from https://www.asciiart.eu/cartoons/casper