LA.
projet personnel · démo jouable

Rally

Un companion de match en temps réel. Tu suis le jeu coup par coup, tu fais des pronostics pour le fun, et tu grimpes au classement. La première démo tourne sur un match rejouable : France-Australie, Coupe du monde FIBA 2019.

Le produit

Pas de streaming, juste l'essentiel du match en direct et de quoi jouer avec. L'idée : transformer un spectateur passif en joueur actif, sans argent, juste pour le fun.

Scoreboard live
score, quart-temps et chrono, dérivés du moteur en continu
Barre de momentum
la dynamique du match d'un coup d'oeil, la signature visuelle
Pronostics pour le fun
qui marque les prochains points, qui gagne le quart-temps
Classement et badges
ta progression face aux bots, et bientôt face aux autres
Play-by-play
le fil des actions, en temps réel

l'architecture

Du temps réel, proprement distribué.

Front statique servi par le CDN, backend AWS event-driven. Au chargement, le front récupère une fois l'anchor du match servi par une Lambda, cale son horloge sur le serveur, puis dérive tout l'état (score, stats, classement) depuis ce temps partagé. Tous les visiteurs voient donc le même instant du match, server-synced. Et si l'appel échoue, fallback gracieux sur un replay local : le site ne casse jamais.

Lambda
expose l'anchor du match en GET public, via une Function URL (sans API Gateway)
DynamoDB
la mémoire : l'anchor de base qui synchronise tous les clients
EventBridge
le gardien : surveille et régénère l'anchor en continu (self-heal)
IAM + CloudWatch
permissions au plus juste, logs et observabilité
SAM · eu-west-3
toute l'infra décrite en YAML, déployée d'une commande
Vercel + Next.js
front statique, horloge calée sur le serveur, fallback replay local

Moteur event-sourced en TypeScript pur, infra en SAM (IaC, eu-west-3). Prochaine étape : un WebSocket pour pousser le temps réel, sans réécrire la logique.

V1 jouable, déjà en ligne.

La démo tourne sur un match figé France-Australie, ce qui la découple de toute API sportive. La suite : une vraie source de données en direct, des comptes joueurs, et plus de badges. C'est un terrain de jeu pour pousser l'archi temps réel et AWS en conditions réelles.