Une API RESTful construite avec Hapi.js permettant la gestion de films, d'utilisateurs et de favoris avec authentification et notifications par email.
- Inscription avec email de bienvenue automatique
- Authentification par JWT
- Rôles utilisateur (admin/user)
- Gestion des profils
- Opérations CRUD complètes
- Création et modification réservées aux admins
- Informations des films :
- Titre
- Description
- Date de sortie
- Réalisateur
- Système de favoris
- Ajout/suppression des films aux favoris
- Suivi des favoris par utilisateur
- Notifications email automatiques pour :
- Nouveaux films ajoutés
- Mises à jour des films favoris
- Basée sur JWT
- Contrôle d'accès basé sur les rôles
- Routes protégées selon les rôles utilisateur
- MySQL avec Knex
- Système de migrations
- Structure :
- Table users
- Table movies
- Table movie_favorites
- Emails de bienvenue
- Notifications de nouveaux films
- Notifications de mise à jour
- Utilise Nodemailer avec Ethereal
- Cloner le projet :
git clone <repo-url>
cd iut-projectnpm install
- Configure database connection in
.env:
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=your_password
DB_DATABASE=your_database
DB_PORT=3308node reset-db.js
npm start