<style> .navbar-collapse { display: block !important; } </style>

Info Développeur

Détails techniques sur ce site web - une vitrine des compétences de développement full-stack avec Angular, Spring Boot et les pratiques DevOps modernes.

Stack Technique

Frontend

Angular 22
Modern framework with standalone components
TypeScript 6
Type-safe JavaScript
Angular Material
UI component library (Stepper, Forms, Buttons)
Transloco 8
i18n library for 3-language support (NL, EN, FR)
Bootstrap 5
CSS framework with Bootstrap Icons
Web Vitals
Performance monitoring (Core Web Vitals: LCP, INP, CLS)

Backend

Spring Boot 4.1
Java 21 framework with REST API

Database

PostgreSQL 18
Relational database
Flyway
Database migration and version control

DevOps

Docker & Docker Compose
Containerization for all services

Documentation

Springdoc OpenAPI 2
Swagger/OpenAPI API documentation

Email

Brevo SMTP
Professional email service

Monitoring

Sentry
Error tracking and performance monitoring (backend & frontend)

Security

Bucket4j
Rate limiting (5 req/min, 20 req/hour)
OWASP Encoder
XSS protection and input sanitization

Architecture

Documentation API

Tous les endpoints API disponibles avec détails, exemples de requêtes/réponses et informations sur la limitation de débit.

URL de base

  • Développement:http://localhost:8080/api
  • Production:https://fuber-technics.be/api

Note: Dans le déploiement Docker, les requêtes <code>/api/</code> sont proxifiées par le conteneur nginx frontend vers le conteneur backend en interne. L'accès direct au backend (<code>localhost:8080</code>) ne fonctionne que si le port backend est exposé (développement uniquement). En production, tous les appels API passent par le nginx frontend ou le reverse proxy.

Authentification

Tous les endpoints sont accessibles publiquement. Aucune authentification requise.

Limitation de débit

L'endpoint /contact a une limitation de débit: 5 requêtes par minute, 20 requêtes par heure par adresse IP.

Fonctionnalités de sécurité & Qualité du code

Tests

Commandes de test

  • ./test-all.sh (Unix) or test-all.bat (Windows) - Exécuter tous les tests (backend, frontend unit, E2E)
  • ./gradlew test - Tests backend
  • npm test - Tests unitaires frontend
  • npm run e2e - Tests E2E (Cypress)