- Java 17, because Gradle does not support Java 21 yet.
- Docker
- Maven
- npm
- Angular 17
#Build
cd donations-api
./build-api-artifacts.sh
This builds versioned API definition, html documentation for the API, server side stubs library jar, and typescript library for SPA client.
All sides use type-safe language, so the integrity of of client/server communication is checked by compiler and code completion makes development more productive.
For the purpose of take home project documentation is committed to the repository. donations-svc-api-docs-1.0.0.html
in a different terminal run
cd donations-sboot-service
mvn spring-boot:run
in a different terminal run
cd donations-ui
npm install
npm run start
Changes to UI are immediately applied and relected by the running UI
Changes to service hot applied either by running build in a separate terminal, or restarting service
cd donations-sboot-service
mvn package
Note: for faster build mvnd can be used
On start some test data is generated and stored, so the UI
can be used to look at the data.