The back-end of the app CorrectExam.
Deliver and Grade Your Assessments Anywhere
This application helps you seamlessly administer and grade all of your in-class assessments (long exam or short). Save time grading and get a clear picture of how your students are doing. Provide a clear feedback to your students.
Main feature are:
- automatically align your scan
- automatically recognize your student name and firstname on sheet
- identify zones for question to support horizontal or vertical correction
- create generic comment per question with associated bonus or malus to efficiently correct each question
- use your tablet and your pen to annotate student sheet
- provide clear feedback to your students
This application was generated using JHipster 6.10.5 and JHipster Quarkus 1.1.1 (manually upgraded to quarkus 2.9.2.Final), you can find documentation and help at https://www.jhipster.tech/documentation-archive/v6.10.5.
### Build and deploy
Documentation to deploy your own instance is available here
The back-end requires Minio to store the PDF files. An easy way to install and launch Minio on your computer is to use an official Docker image:
podman run -p 9000:9000 -d -p 9090:9090 -e "MINIO_ROOT_USER=admin" -e "MINIO_ROOT_PASSWORD=minioadmin" -v /media/data/miniofiles:/data:Z quay.io/minio/minio server /data --console-address ":9090"
The back-end also requires a database. On Linux you can install MariaDB. On Fedora, you can run:
sudo dnf install mariadb-server
sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo mysql_secure_installation
sudo mysql -u root
CREATE DATABASE gradeScopeIstic;
The first run of the back-end must initial and populate the DB with fake data. To do so, run:
./mvnw quarkus:dev -Dquarkus.liquibase.migrate-at-start=true
It creates two users user:user
and admin:admin
.
After that you can launch the back-end classically ./mvnw
To start your application in the dev profile, run:
./mvnw
For further instructions on how to develop with JHipster, have a look at Using JHipster in development.
To build the final jar and optimize the correctExam application for production, run:
./mvnw -Pprod clean package
To ensure everything worked, run:
java -jar target/quarkus-app/*.jar
Refer to Using JHipster in production for more details.
Targeting your Operation System
In order to build a native image locally, your need to have GraalVM installed and GRAALVM_HOME
defined.
You can use the native
profile as follow to build native executable.
./mvnw package -Pnative
Keep in mind that the generated native executable is dependent on your Operating System.
Targeting a container environment If you plan to run your application in a container, run:
./mvnw package -Dnative -Dquarkus.native.container-build=true
It will use a Docker container with GraalVM installed and produce an 64 bit Linux executable.
To launch your application's tests, run:
./mvnw verify
For more information, refer to the Running tests page.
You can use Docker to improve your JHipster development experience. A number of docker-compose configuration are available in the src/main/docker folder to launch required third party services.
For example, to start a mysql database in a docker container, run:
docker-compose -f src/main/docker/mysql.yml up -d
To stop it and remove the container, run:
docker-compose -f src/main/docker/mysql.yml down