This guide explains how to run the project locally for development using VS Code (recommended), Dev Containers, Maven, and Cargo.
- IDE: Visual Studio Code
- Extension:
Dev Containers(Microsoft) - Docker: required
- Open the repository in VS Code.
- Run:
Dev Containers: Reopen in Container. - Wait until container build/start is complete.
- Verify tools inside container:
java -version
mvn -versionDev container configuration is located at:
.devcontainer/devcontainer.json.devcontainer/Containerfile
VS Code tasks are defined in .vscode/tasks.json.
-
build_package- Command:
mvn -DskipTests clean package - Produces build artifacts before runtime.
- Command:
-
cargo_start- Command:
mvn -DskipTests cargo:run - Starts Tomcat through Cargo on
8080.
- Command:
-
cargo_stop- Command:
mvn -DskipTests -Dcargo.jvmargs= cargo:stop || true - Stops Cargo-managed Tomcat.
- Command:
-
dev_up- Runs
build_packagethencargo_start.
- Runs
-
dev_down- Runs
cargo_stop.
- Runs
- Open
Terminal -> Run Task... - Run
dev_up - Open app:
http://localhost:8080/ - When done, run
dev_down
From repository root:
mvn -DskipTests clean package
mvn -DskipTests cargo:runStop runtime in another terminal:
mvn -DskipTests -Dcargo.jvmargs= cargo:stop- UI:
http://localhost:8080/ - Rules:
http://localhost:8080/list-rules - API info:
http://localhost:8080/api - Validate:
http://localhost:8080/validate
Note: /index.html is intentionally blocked and returns 404.
Tasks use -DskipTests for faster local iteration.
Run tests manually before opening a PR:
mvn -q test.vscode/is part of the repository and should be committed when task/launch/workspace settings are updated.- Keep development docs in sync with task or devcontainer changes.