Cette base de code est l'API REST complète pour l'authentification et la gestion de projets avec système de rôles et de permissions pour le projet Abricot.
-
Renommer le fichier
.env.exampleen.envet changer la valeur deJWT_SECRET -
Installer les dépendances :
npm install- Configurer la base de données :
npx prisma generate
npx prisma migrate deploy- Démarrer le serveur :
npm run devLe serveur démarre sur http://localhost:8000
Vous pouvez visualiser votre base de données avec prisma studio. Pour cela, il vous suffit d'exécuter :
npx prisma studioCe projet utilise Swagger/OpenAPI pour documenter l'API backend de manière interactive et à jour.
http://localhost:8000/api-docs
- Serveur backend démarré (
npm run dev) - Base de données accessible
Il existe un script pour peupler la base de données avec des données de test réalistes pour tester toutes les fonctionnalités de l'application.
npm run seedLe script crée les éléments suivants :
- Alice Martin (alice@example.com) - Propriétaire principal
- Bob Dupont (bob@example.com)
- Caroline Leroy (caroline@example.com)
- David Moreau (david@example.com)
- Emma Rousseau (emma@example.com)
- François Dubois (francois@example.com)
- Gabrielle Simon (gabrielle@example.com)
- Henri Laurent (henri@example.com)
- Isabelle Petit (isabelle@example.com)
- Jacques Durand (jacques@example.com)
Mot de passe pour tous les utilisateurs : P@ssword123
- Administrateur de projet : Peut éditer, supprimer le projet, créer et supprimer des tâches
- Contributeur : Peut créer et supprimer des tâches
- Aucun accès : Ne peut pas accéder au projet
| Action | Propriétaire | Admin | Contributeur |
|---|---|---|---|
| Créer un projet | ✅ | ❌ | ❌ |
| Modifier le projet | ✅ | ✅ | ❌ |
| Supprimer le projet | ✅ | ❌ | ❌ |
| Ajouter/Retirer contributeurs | ✅ | ✅ | ❌ |
| Lister les tâches d'un projet | ✅ | ✅ | ✅ |
| Créer des tâches | ✅ | ✅ | ✅ |
| Modifier des tâches | ✅ | ✅ | ✅ |
| Supprimer des tâches | ✅ | ✅ | ✅ |