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

Developer Info

Technical details about this website - a showcase of full-stack development skills with Angular, Spring Boot and modern DevOps practices.

Tech Stack

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

API Documentation

All available API endpoints with details, request/response examples and rate limiting information.

Base URL

  • Development:http://localhost:8080/api
  • Production:https://fuber-technics.be/api

Note: In Docker deployment, <code>/api/</code> requests are proxied by the frontend nginx container to the backend container internally. Direct backend access (<code>localhost:8080</code>) only works if the backend port is exposed (development only). In production, all API calls go through the frontend nginx or reverse proxy.

Authentication

All endpoints are publicly accessible. No authentication required.

Rate Limiting

The /contact endpoint has rate limiting: 5 requests per minute, 20 requests per hour per IP address.

Security Features & Code Quality

Testing

Test Commands

  • ./test-all.sh (Unix) or test-all.bat (Windows) - Run all tests (backend, frontend unit, E2E)
  • ./gradlew test - Backend tests
  • npm test - Frontend unit tests
  • npm run e2e - E2E tests (Cypress)