A Library Management Simulation WebApp for the 'SES' (Software Engineering Skills) course
Part of the course Software Engineering Skills at Faculty of Engineering Technology, KU Leuven, Belgium.
- Java 12.x or higher (see
build.gradle
) - Gradle 6.7.x or higher (see
gradlew --version
output)
Upgrading the Gradle wrapper can be done using:
$ ./gradlew wrapper --gradle-version 6.7
DropWizard Java RESTful API that integrates Jetty/Jackson/... functionality in a nice all-in-one package.
This means executing the jar automatically bootstraps a webserver, and REST calls can be easily added using javax.ws
annotations. See be.kuleuven.sessylibrary.api
classes for examples.
Building:
- One can create a big jar using the
./gradlew shadowjar
command. Run this big whopper usingjava -jar build\libs\sessylibrary-1.0-SNAPSHOT-all.jar server app.yml
. - Simpler: just instruct gradle to boot locally using
./gradlew serve
. - Using an IDE: Run the class
be.kuleuven.sessylibrary.SessyLibApplication
with the arguments "server app.yml".
After that, your project should be running at http://localhost:8080
now.
VueJS Progressive single-page JS framework that calls the above API endpoints and is served from the very same webserver thanks to the dropwizard-assets
module.
The compiled vuejs webpage should be copied to src/main/resources/assets
- index.htm
is served at /
.
Students do not need to edit the frontend part of this application and may consider this as a 'given'.
Building and running the Frontend source:
npm install
in the frontend subdirnpm run serve
in the frontend subdir
Your project should be running at http://localhost:8080
now.
- The application will be used during labs as part of multiple exercises.
- Fix the Open Github Issues. You will need to create a Fork, as this repository is the example one where no merges will be accepted.