Aller au contenu principal

(S15) Itération 5 - Application admin rendu client et site web final

Thème: Application d'administration complète et ajout de support pour les paiements

Durant cette itération vous aurez l'occasion de poursuivre le développement de l'application de gestion (admin) du site Web de Steamy en mode client-serveur (API et Blazor WASM) et d'ajouter le support pour les paiements via Stripe Checkout.

Vous aurez à remettre le code complet de l'application de gestion et du site Web transactionnel rendu serveur.

Votre mission

Votre objectif

Développer et finaliser l'application de gestion du site en Blazor et ajouter le support pour les paiements via Stripe Checkout.

Il n'y a pas de maquettes Figma pour cette portion, vous êtes libre d'implémenter le tout comme bon vous semble, tant que les fonctionnalités demandées sont présentes.

Pour cette mission (en individuel), valant pour 40% de la session, vous devrez remettre l'application d'administration de la plateforme et ajouter le support pour les paiements au site Web transactionnel (projet MVC).

Les fonctionnalités suivantes sont demandées:

  • Authentification via un formulaire de connexion et jeton JWT
  • Authorization de l'accès à la plateforme via un rôle 'Admin' et la gestion des droits
    • Un administrateur peut tout faire
  • Authorization de l'accès à la plateforme via un rôle 'Editeur' et la gestion des droits
    • Un éditeur peut
  • Gestion complète (CRUD) des jeux
  • Gestion complète (CRUD) d'une autre ressource (catégorie, développeur, etc.) de votre choix (minimum 4 champs d'interface à gérer). Vous pouvez créer une autre table au besoin.
  • Ajout d'une option de recherche pour filtrer la liste de jeux ou encore filtrer la liste de votre propre CRUD dans le projet Blazor admin.
  • Utilisation des fichiers ressources pour tous les aspects du projet Blazor
  • Avoir au moins une page significative dans le projet MVC complètement traduite avec changement de langue fonctionnel
  • Ajout de Stripe Checkout pour les paiements au site transactionnel
  • Tester l'application d'admin et le site transactionnel via des tests automatisés. Vous devez tester:
    1. Test d'intégration (MVC) (7 pts.)
      • Obtenir (action Show) un jeu (succès et non trouvé/erreur)
      • Créer ou modifier une évaluation (valide + non valide)
    2. Test d'intégration (API) (7 pts.)
      • Tester la création de votre CRUD (valide + non valide)
    3. Test unitaire (3 pts.)
      • Test de votre choix (significatif)
    4. Test E2E (3 pts.)
      • Test de votre choix (significatif)

De plus, comme il s'agit de la remise finale, vous pouvez revisiter votre projet de site Web transactionnel afin de l'améliorer.

Modalités de remise

  • Remis via Léa et GitLab
  • Déposer le code de votre projet sur un repo GitLab sous le tag iteration_5
  • Vous assurer que je sois maintainer ou developer sur votre repo
  • Remettre un fichier .txt sur Léa avec l'URL de votre repo GitLab
  • Important: Préciser dans votre Readme les choix individuels que vous avez fait: votre choix de CRUD, votre choix de filtre ou recherche, la page complète traduite et les tests que vous avez choisi de faire. Si jamais un élément n'a pas été fait, précisez-le. Cela évitera des confusions.
  • Important: Inclure un export pg_dump (fichier .sql) de votre BD à la racine du repo. Voir le rappel de la procédure plus bas.
  • Remis avant le 13 mai 2025 23:59

Grille d'évaluation

CritèrePoints
Projet Blazor (WASM) lié au projet d'API et intégré à la structure existante5%
Authentification par jeton avec gestion des droits d'accès (rôles)10%
Gestion complète des jeux (CRUD)20%
Gestion complète (CRUD) d'une autre ressource20%
Option de recherche5%
I18n, changement de langue (MVC) et utilisation de fichiers ressources5%
Tests automatisés20%
Paiement via Stripe Checkout5%
Qualité générale et documentation10%

Export de votre BD avec pg_dump

Pour exporter le contenu et l'état de votre base de données, utilisez DataGrip, conjointement avec pg_dump.

  1. Clic droit sur la BD -> Export with pg_dump Imgur
  2. Cliquez sur le dossier du champ Path to pg_dump pour localiser l'exécutable pg_dump Imgur
  3. Localisez le fichier pg_dump.exe qui devrait être dans le dossier Program Files\PostgreSQL\15\bin si vous avez la version 15 de PostgreSQL et avez conservé les paramètres par défaut du dossier d'installation. Imgur
  4. Cliquer sur OK
  5. Choisir le nom du fichier sous lequel sauvegarder l'export (dois être un fichier avec l'extension .sql) Imgur
  6. Cliquer sur Run
  7. Mettre le fichier .sql généré à la racine de votre repo