Bienvenue dans le projet Movie Manager App ! Ce projet a été réalisé en C# avec .NET et inclut une partie API backend et une partie frontend Blazor. Il a été développé sur une période d'un mois.
Le projet est composé de deux parties principales :
- API Backend – basée sur ASP.NET Core
- Frontend Blazor – interface utilisateur
Le backend est construit avec ASP.NET Core et utilise les technologies suivantes :
- JWT pour l'authentification
- Entity Framework pour la gestion de la base de données (SQLite)
- Injection de dépendances
- Gestion d'erreurs avec
try-catchet codes HTTP appropriés (200, 404, 500, etc.) - Configuration sécurisée (Clé API OMDB, Secret JWT)
- Appels asynchrones avec
async/await
✅ Récupérer la liste des utilisateurs (Id, Pseudo, Rôle)
✅ Récupérer un utilisateur par son pseudo et mot de passe (login)
✅ Ajouter un utilisateur (register)
✅ Modifier un utilisateur (Pseudo, Password, Role)
✅ Supprimer un utilisateur
✅ Le mot de passe est hashé et n'est jamais renvoyé dans la réponse
✅ Récupérer les favoris d'un utilisateur
✅ Ajouter un favori
✅ Supprimer un favori
✅ Récupérer la liste des films
✅ Supprimer un film
✅ Rechercher un film par son titre
✅ Importer des films depuis l'API OMDB
✅ JWT Service – Gestion du token JWT
✅ OMDB Service – Communication avec l'API OMDB
Le frontend est développé avec Blazor et permet une expérience utilisateur fluide et sécurisée.
✅ Formulaire de connexion
✅ Formulaire d'inscription
✅ Liste des films affichée sous forme de cartes
✅ Ajouter/Supprimer des films des favoris
✅ Liste des utilisateurs avec leurs rôles
✅ Page des favoris
✅ Page d'administration pour importer des films
✅ Déconnexion
✅ AuthService – Gestion de l'authentification
✅ UserService – Gestion des utilisateurs
✅ FavoriteService – Gestion des favoris
✅ MovieService – Gestion des films
✅ Le token est stocké dans le LocalStorage
✅ Le token est envoyé dans le header des requêtes API protégées
✅ Les routes sont protégées en fonction du rôle de l'utilisateur
✅ Langage : C#
✅ Framework Backend : .NET Core
✅ Base de Données : SQLite
✅ Authentification : JWT
✅ Appels API : OMDB
✅ Frontend : Blazor
git clone https://github.com/votre-utilisateur/movie-manager-app.gitConfigurer la chaîne de connexion dans le fichier appsettings.json :
"ConnectionStrings": {
"DefaultConnection": "Data Source=movies.db"
}Dans appsettings.json :
"JwtSettings": {
"Secret": "VOTRE_SECRET_JWT",
"Issuer": "https://localhost:5001",
"Audience": "https://localhost:5001"
},
"OMDB": {
"ApiKey": "VOTRE_CLÉ_OMDB"
}Copier
Modifier
dotnet ef database updateBackend : dans TrackerFavorisApi
dotnet run Frontend : dans TrackerFavorisFront
dotnet run 1.Créez un compte via le formulaire d'inscription 2.Connectez-vous avec votre pseudo et mot de passe 3.Parcourez la liste des films et ajoutez-les à vos favoris 4.Accédez à la page admin pour importer des films 5.Gérez les utilisateurs et rôles via la page admin
des utilisateurs qui sont déja exist
| Nom d'Utilisateur | Mot de Passe | Rôle |
|---|---|---|
string |
string |
user |
azerty |
azerty |
user |
admin |
admin |
admin |
- Les mots de passe sont hashés avant d'être stockés
- Les routes protégées nécessitent un token JWT valide
- Gestion des rôles pour protéger l'accès à certaines pages
├── TrackerdeFavorisApi
│ ├── Controllers
│ ├── Models
│ ├── Services
│ └── Data
├── TrackerdeFavorisFront
│ ├── Components
│ ├── Pages
│ └── Services
├── appsettings.json
├── readme.mdCe projet est sous licence MIT – voir le fichier LICENSE pour plus de détails.
🌐 OMDB API : https://www.omdbapi.com