Files
new-shapes/README.md

1.1 KiB

new-shapes

A shape editor desktop application built with Java Swing. Supports rectangles, circles, triangles, text, shape collections, resize handles, and export to HTML/SVG.

Prerequisites

  • JDK >= 16 (project targets Java 16)
  • A graphical display (X11/Wayland) since this is a Swing GUI application

Bootstrap

If you have direnv installed, the environment activates automatically:

direnv allow   # one-time, then auto-activates on cd

Otherwise, enter the dev shell manually:

nix develop

Both provide JDK 17 and Maven 3.9.x preconfigured. No other setup needed.

Without Nix

Install JDK 16+ and use the bundled Maven wrapper — no separate Maven installation required:

./mvnw --version   # downloads Maven 3.9.12 on first run

Run the application

./mvnw compile exec:java -Dexec.mainClass="ovh.gasser.newshapes.App"

Run tests

./mvnw test

To run the full verification pipeline (compile, test, JaCoCo coverage check with 50% minimum line coverage):

./mvnw verify

Coverage reports are generated in target/site/jacoco/.