Version
- 0.0.1 (02/2025)
Statut
Contexte du projet
Ce projet est né d’un besoin personnel d’améliorer ma culture générale. Disposant d’un recueil de QCM, j’ai constaté que le format papier manquait de praticité et de dynamisme. J’ai donc décidé de créer une application de quiz offrant un entraînement sur différents thèmes, avec un suivi de progression.
Fonctionnalités
Il y a énormément de fonctionnalités potentielles pour ce projet, mais je vais me concentrer sur les principales pour le moment. La première version de l’application devrait inclure les fonctionnalités suivantes :
Pour les inscrits :
- Accès à une bibliothèque de quiz variés : Accès à une large sélection de quiz couvrant divers thèmes tels que la littérature, l’histoire, les sciences, l’art, etc.
- Choix du niveau de difficulté : Consultation des quiz disponibles pour chaque niveau de difficulté.
- Résultats détaillés : Affichage des résultats détaillés après avoir répondu à un quiz, avec la possibilité de revoir les questions et les réponses.
- Classement : Consultation du classement des meilleurs joueurs / scores.
- Suivi personnalisé : Consultation des statistiques de progression et de performance personnel selon les thèmes et les quiz, en plus des statistiques globales.
- Historique des quiz : Consultation des quiz déjà réalisés et des scores obtenus.
- Statistiques globales : Consultation des statistiques globales de la communauté.
Pour l’administrateur :
- Gestion des thèmes : Ajout, modification et suppression des thèmes et de leurs sous-catégories.
- Gestion des quiz : Ajout, modification et suppression des quiz (questions / réponses).
- Gestion des niveaux de difficulté : Ajout, modification et suppression des niveaux de difficulté.
- Gestion des utilisateurs : Consultation des profils, suppression de comptes et attribution de rôles.
Stack Technique
Il est temps pour moi de réaliser une application web complète de A à Z afin de mettre en pratique les compétences acquises lors de mes précédents projets. Pour cela, j’ai choisi l’écosystème Java / Spring afin de développer l’API REST, une solution reconnue pour sa robustesse et sa scalabilité.
Souhaitant approfondir mes connaissances en front-end, j’ai opté pour Angular, souvent utilisé en complément de Java dans le développement d’applications web. Ce framework structuré me permettra de monter en compétence tout en garantissant une application dynamique et maintenable.
L’interface sera conçue avec Tailwind CSS, un framework qui facilite la création de designs modernes et responsifs tout en optimisant le temps de développement.
Enfin, pour la base de données, mon choix s’est porté sur PostgreSQL, réputé pour sa fiabilité, ses performances et sa compatibilité avec les technologies sélectionnées.
Pour en savoir plus, n’hésitez pas à consulter la documentation spécialement conçue pour ce projet ici !