Site de Critiques (Films)
Conception d'une application client-serveur : API REST (Symfony + API Platform) pour le back-end, et une interface Vue.js pour le front-end.
Contexte & Objectif
Projet universitaire mené en équipe de 4. L'objectif est de développer deux applications communicantes : une API REST réalisée avec Symfony et API Platform, et une application cliente en Vue.js utilisant cette API. Le thème du site est la critique de films avec des fiches pour chaque films, une gestion des utilisateurs, système de notes et critères multiples.
Ma contribution personnelle
Développement Front-end
Conception et intégration de l'interface utilisateur en Vue.js, création des composants et gestion de l'expérience utilisateur.
Correction de bugs API
Identification et résolution de bugs côté back-end sur l'API Symfony pour assurer la stabilité de l'application.
Déploiement & Hébergement
Mise en place de l'infrastructure de déploiement et configuration de l'hébergement pour rendre l'application accessible.
Fonctionnalités côté utilisateur
Liste des films
Afficher la liste des films présents en base de données avec pagination, recherche et filtres.
Page d'un film
Afficher les informations complètes du film, le nombre de critiques, la note moyenne et le détail des critiques associées.
Inscription & Gestion du compte
Permettre aux utilisateurs de s'inscrire, de s'authentifier (JWT), de modifier leurs informations personnelles et de supprimer leur compte.
Publication & Administration
Les utilisateurs connectés peuvent proposer une fiche film. Les administrateurs valident les soumissions, peuvent supprimer des films et gérer les comptes utilisateurs.
Création et gestion des critiques
Un utilisateur connecté peut créer, modifier ou supprimer sa propre critique. Les administrateurs peuvent supprimer n'importe quelle critique.
Pages utilisateur & favoris
La page utilisateur liste ses critiques. Les utilisateurs peuvent marquer des films en favoris et consulter une page dédiée regroupant les dernières critiques des films favoris.
Exigences techniques & bonnes pratiques
- Routes nommées et cohérentes pour l'API (RESTful).
- Gestion correcte de la connexion / déconnexion et rafraîchissement des tokens JWT (refresh token).
- Découpage en vues et composants front pertinents, code typé en TypeScript.
- Gestion des erreurs réseau et messages utilisateurs (notifications / flashes).
- Connexion des avatars à MyAvatar (hachage SHA-256 de l'email côté serveur)
- Utilisation d'une API externe pour récupérer les affiches de films
Processus de développement
Spécifier
Définir le modèle de données et les critères des critiques.
Développer API
Implémentation des ressources, tests et sécurité (JWT).
Construire Front
Composants Vue, gestion des états, appels API et UI accessible.
Tester & Déployer
Tests fonctionnels, correction, et publication sur un serveur.
Technologies & Compétences
Symfony et API Platform
Ressources API, security, StateProcessor, serialisation et validators.
Vite
Packaging et compilation du projet
Vue.js / TypeScript
Composants, routing, gestion d'état et consommation d'API REST.
Bases de données
Modélisation, migrations et requêtes
CI / Déploiement
Docker et scripts de déploiement
Contact & Ressources
Projet réalisé en équipe — pour plus d'infos, le dépôt et la documentation sont fournis sur demande.