MC — PORTFOLIO
← Projets·03 / 04·EN LIGNE

RETARDS SNCF.

Année
2026
Stack
NestJSPostgreSQLCaddy

Le problème

La SNCF publie sa ponctualité en moyennes lissées. Ici, la mesure est indépendante : EN VOITURE photographie tous les trains en circulation toutes les 5 minutes, un collecteur archive chaque retard dans PostgreSQL, et cette API interroge cette mémoire qui grossit jour après jour.

Ce que ça fait

Des classements servis en JSON : les lignes qui font perdre le plus d'heures aux voyageurs, les gares où les retards naissent (en comparant le retard d'un train d'un arrêt au suivant), le palmarès des pires trains, les courbes par heure et par jour. Le tout documenté et testable dans une doc Swagger interactive.

Sous le capot

NestJS et SQL brut : les stats sont des requêtes analytiques (window functions, agrégats filtrés) qu'un ORM écrirait mal. Cache mémoire de 60 secondes, limite de débit par IP, service systemd derrière Caddy sur un VPS, déploiement automatique à chaque push.