Deux implementations : (1) Express.js/Socket.io avec MongoDB et Passport auth, (2) Firebase Realtime DB avec jQuery et Material Design. chess.js pour validation des coups.
La premiere version utilise Express.js avec Socket.io pour la communication temps reel bidirectionnelle. MongoDB stocke les parties, les profils et l'historique des coups. Passport gere l'authentification. La validation des coups passe par chess.js qui implemente toutes les regles FIDE : roque, en passant, promotion, pat, echec et mat.
La deuxieme version remplace le backend custom par Firebase Realtime DB, qui synchronise automatiquement l'etat du plateau entre les deux joueurs. Le frontend jQuery et Material Design offre une interface responsive. Le choix de deux implementations illustre le compromis entre controle (serveur custom) et simplicite de deploiement (Firebase serverless).
V1 : Backend Express.js avec Socket.io WebSockets pour synchronisation temps-reel.
V1 : MongoDB/Mongoose pour persistance parties, Passport pour authentification.
V1 : Handlebars templates, chess.js pour validation reglementaire.
V2 : Firebase Realtime Database pour synchronisation sans serveur.
V2 : jQuery frontend avec chessboard.js et Material Design Lite.
Comparaison architecturale WebSocket vs Firebase pour gaming temps-reel.
WebSockets temps-reel
Realtime DB serverless
Validation reglementaire
Brief, repo, ou appel rapide - on s'adapte.