smansteel / A2-genie-logiciel

les génies
GNU General Public License v3.0
3 stars 0 forks source link

Genep'isep : Outil de gestion des compétences

Frontend : Angular - Tailwind CSS

Rendez vous dans le dossier front :

cd ./front

Pour installer ce projet il faudra avoir pnpm, npm et node installé. Vous pouvez télécharger Node ici. Une fois Node installé, pnpm peut être installé avec :

npm install -g pnpm

Vous pouvez maintenant installer les dépendences du projet avec :

pnpm install

Vous pouvez maintenant build le projet :

pnpm run build

Une fois le projet build, rendez vous dans le dossier dist/front/browser :

cd ./dist/front/browser

Vous pouvez servir les fichiers de cette application statiquement sans problèmes avec le serveur web de votre choix !

Backend : Java Spring

Pour executer le backend, il faudra avoir une base de données PostgresQL, voici un fichier docker compose simple pour en créer une :

version: "3.9"

services:
    postgres:
        image: postgres:16-alpine
        ports:
            - 54322:5432 # uses port 54322 to open database on local server
        volumes:
            - ./pgdata:/var/lib/postgresql/data
        environment:
            - POSTGRES_PASSWORD= # postgres root password
            - POSTGRES_USER= # postgres root username
            - POSTGRES_DB= # postgres database name
        restart: unless-stopped

une fois ce fichier compose.yaml enregistré, celui ci peut être démarré avec

docker compose up

Rendez vous dans le dossier backend :

cd ./backend

Pour installer ce projet il faudra avoir un JDK java installé. Vous pouvez télécharger Eclipse Temurin, un JDK populaire et open source ici.

Enregistrez les variables d'environnement suivantes :

db_password=
db_string=
db_username=
jwt_secret=

Note : la variable db_string doit avoir cette forme là : jdbc:postgresql://host:port/database

Sur windows:

./mvnw.cmd spring-boot:run

Sur les systèmes POSIX :

./mvnw spring-boot:run

Note : Le fichier n'a pas forcément les permissions d'execution car il est en provenance du web, effectuez la commande suivante pour le rendre executable :

chmod +x ./mvnw

Utilisez le projet !