TopScores

À propos du projet

TopScores est une application web qui permet à des joueurs de s'inscrire, d'enregistrer leurs scores sur différents jeux, et de voir chaque mois un classement avec podium des meilleurs joueurs. Pense à ça comme un tableau des scores style arcade, mais accessible depuis n'importe quel navigateur.

TopScores

05/2025
9 commits

Application web de classement de scores

Technologies utilisées

PHP JavaScript Bootstrap Twig

Ce que ça permet de faire

- S'inscrire et se connecter — chaque joueur crée un compte avec son pseudo, son email et un mot de passe. Un email de confirmation est envoyé pour vérifier l'adresse.
- Ajouter des scores — après une partie, le joueur saisit son score et le jeu concerné. L'historique de ses parties est consultable.
- Voir le leaderboard mensuel — la page principale affiche un podium visuel (1er, 2ème, 3ème) pour le mois en cours, suivi d'un tableau complet avec tous les scores classés du meilleur au moins bon. Le classement repart à zéro chaque mois.
- Gérer les jeux — les jeux disponibles peuvent être ajoutés, modifiés ou supprimés.
- Panneau d'administration — un rôle administrateur permet de gérer les comptes joueurs (visible uniquement par les admins).

Points techniques

- Architecture MVC — le projet est découpé en trois couches séparées : les données (Entities), la logique (Controllers), et l'affichage (Templates). C'est une organisation standard dans le développement web professionnel.
- Système de rôles — deux niveaux d'accès distincts : ROLE_USER pour les joueurs, ROLE_ADMIN pour les administrateurs. Certaines pages sont protégées et inaccessibles sans les bons droits.
- Vérification d'email — à l'inscription, un lien de confirmation est envoyé automatiquement par email pour valider le compte.
- Classement mensuel automatique — la requête en base de données filtre uniquement les scores du mois en cours et les trie du plus élevé au plus bas, de façon entièrement automatique.