🎨 Introduction
⚙️ Technologies
🎯 Fonctionnalités
🧱 Schéma & Routes
🚀 Installation
🧪 Utilisation & Tests
Ce projet est un exercice Fullstack conçu pour tester la maîtrise des opérations CRUD à travers la création d’une API REST.
Il permet la gestion d’un catalogue de produits à l’aide de Node.js, Express et MongoDB, via un backend structuré.
Une interface frontend intégrée permet de tester automatiquement les routes et d’obtenir un mot secret une fois tous les tests réussis.
- Backend : Node.js, Express
- Base de données : MongoDB (Mongoose)
- Langage : JavaScript
- Création de produit
- Lecture d’un ou plusieurs produits
- Mise à jour d’un produit
- Suppression d’un produit
- API REST conforme aux spécifications des tests automatiques
mongoose.Schema({
name: { type: String, required: true },
description: { type: String, required: true },
price: { type: Number, required: true },
inStock: { type: Boolean, required: true },
});-
GET
/api/products
Retourne tous les produits sous la forme :{ "products": [ ... ] } -
GET
/api/products/:id
Retourne le produit correspondant à l’ID :{ "product": { ... } } -
POST
/api/products
Corps de requête attendu :{ "name": "Nom", "description": "Description", "price": 99.99, "inStock": true }Retourne le produit nouvellement créé (avec
_id) :{ "product": { ... } } -
PUT
/api/products/:id
Met à jour un produit existant.
Corps attendu :{ "name": "Nom", "description": "Description modifiée", "price": 120.0, "inStock": false }Réponse :
{ "message": "Modified!" } -
DELETE
/api/products/:id
Supprime le produit correspondant à l’ID.
Réponse :{ "message": "Deleted!" }
- Git — Système de gestion de versions
- Node.js — Exécuteur local de scripts JavaScript
- npm — Gestionnaire de paquets JavaScript
- MongoDB — Base de données NoSQL
- Google Chrome — Navigateur moderne
- Visual Studio Code — Éditeur de code
git clone https://github.com/ValentinMadiot/CRUD-Test-1
cd CRUD-Test-1Renommer .env.exemple en .env
Ajoutez les variables d’environnement dans le fichier .env :
# IDENTIFIANT BASE DE DONNEES (MongoDB)
MONGODB_URI=mongodb+srv://<username>:<password>@cluster0.mongodb.net/myDatabase?retryWrites=true&w=majoritycd backend
npm install
npm startBackend disponible sur : http://localhost:8080
cd frontend
npm install
npm startFrontend disponible sur : http://localhost:8081
- Lancez votre serveur API avec
npm startdans le dossier backend - Lancez l'application frontend avec
npm startdans le dossier frontend - Indiquez le port utilisé par votre API (par défaut :
8080) - Cliquez sur TEST ROUTES pour démarrer la vérification
- Tous les tests doivent réussir pour révéler le mot secret