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

Developer Info

Technische details over deze website - een showcase van full-stack development vaardigheden met Angular, Spring Boot en moderne DevOps praktijken.

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

Architectuur

API Documentatie

Alle beschikbare API endpoints met details, request/response voorbeelden en rate limiting informatie.

Base URL

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

Opmerking: In Docker deployment worden <code>/api/</code> requests geproxied door de frontend nginx container naar de backend container intern. Directe backend toegang (<code>localhost:8080</code>) werkt alleen als de backend poort exposed is (alleen voor development). In productie gaan alle API calls via de frontend nginx of reverse proxy.

Authenticatie

Alle endpoints zijn publiek toegankelijk. Geen authenticatie vereist.

Rate Limiting

Het /contact endpoint heeft rate limiting: 5 requests per minuut, 20 requests per uur per IP adres.

Security Features & Code Kwaliteit

Testing

Test Commando's

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