Deux iterations : (1) reprise d'un jeu Express.js/Socket.io/MongoDB/Passport existant (vues, panneau d'administration et gestion des sockets retravailles), (2) Firebase Realtime DB avec jQuery et Material Design. chess.js pour la validation des coups.
La premiere version reprend un jeu Express.js/Socket.io existant, initialement developpe par un collaborateur. J'y ai retravaille les vues, le panneau d'administration et la gestion des sockets pour la communication temps reel bidirectionnelle. MongoDB persiste les parties et l'historique des coups, Passport gere l'authentification, et chess.js valide les coups selon 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 : reprise d'un jeu Express.js/Socket.io existant, refonte des vues, du panneau d'administration et de la gestion des sockets.
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.