G-SERVICES — geolocated services and products
A platform to manage geolocated services and products: a full administration back-office (RBAC) and a cinematic public front, built on a UML model of about 28 classes.

A complete UML model — about 28 classes, 2 packages, 4 association classes — had to become a real, manageable and tested application.
Implement the whole model in the database, in JPA and in services, manage it through a web interface and expose a public front.
UML modelling, design and development
Technologies- Java
- Spring Boot
- Spring Security
- JPA/Hibernate
- PrimeFaces
- PostgreSQL
- Flyway
- Docker
Technical implementation
Stack
Java 21, Spring Boot 3.3; Jakarta Faces (Mojarra) and PrimeFaces 14 interface via JoinFaces.
UML modelling
Class diagram of about 28 classes in 2 packages (GestServices, GestUser) with association classes: geography (continent to city), services, products and articles, batch stock, people, roles, profiles and permissions.
Persistence
Spring Data JPA / Hibernate 6; PostgreSQL 16; 19 Flyway migrations; DTO mapping with MapStruct.
Security
Spring Security 6: roles and profiles, per-person permission overrides, account locking.
Tests
20 unit tests on business rules and a Testcontainers integration test that applies every migration.
Delivery
One command is enough: docker compose up --build (application, PostgreSQL, pgAdmin).
Mobile
Flutter client as a complement (mobile folder of the repository).
- I modelled the domain in UML then implemented every class in JPA, with versioned Flyway migrations.
- I built the back-office with Jakarta Faces and PrimeFaces, secured by Spring Security (roles and per-person permission overrides).
- I built the animated public front and the business rules: net price, stock by batch, moderated reviews.
- I tested the business rules (JUnit 5) and the full startup (Testcontainers), then containerised everything with Docker Compose.
- Full back-office with roles and permissions
- Catalogue of geolocated services and products
- Stock by batch and threshold alerts
- Promotions and net price
- Moderated reviews
- Animated public front
- UML classes implemented
- Flyway migrations
- unit tests + 1 integration test
- JSF · PrimeFaces → Spring Boot · Security
- Spring Boot · Security → PostgreSQL 16 · Flyway
- Docker Compose → Spring Boot · Security
