Skip to content

Platynut/keyCraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

Commandes utiles

  • Les différentes dépendances installées pour le backend :

    • Express – serveur et routage
      npm install express
    • Mongoose – gestion MongoDB avec des modèles
      npm install mongoose
    • Nodemailer – envoi d’e-mails
      npm install nodemailer
    • dotenv – variables d’environnement (ex: mots de passe dans .env)
      npm install dotenv
    • CORS – autoriser les requêtes entre domaines (ex: frontend → backend)
      npm install cors
    • bcrypt – hachage des mots de passe
      npm install bcrypt
    • jsonwebtoken – création et vérification des tokens JWT
      npm install jsonwebtoken
    • express-session – gestion de sessions via cookies
      npm install express-session
    • mongodb – driver natif MongoDB
      npm install mongodb
  • Si problème lors de l'installation sous PowerShell :

    Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
  • Lancer le serveur :

    node config/node.js
  • Installer le rechargement automatique (nodemon) :

    npm install -g nodemon
  • Lancer avec rechargement automatique :

    nodemon config/node.js

Endpoints API

  • GET /keyboard
    Récupère tous les claviers.

  • GET /keyboard/:id
    Récupère un clavier par son id.

  • POST /keyboard
    Ajoute un clavier.
    Exemple de body :

    {
      "name": "Epomaker TH80",
      "marque": "Epomaker",
      "type": "Custom",
      "switches": "Gateron Pro Yellow",
      "layout": "75%",
      "wireless": true,
      "rgb": true,
      "hot_swappable": true,
      "price": 99.99,
      "stock": 15
    }
  • PATCH /keyboard/:id
    Modifie un ou plusieurs champs d’un clavier existant.
    Exemple :

    {
      "price": 10.0
    }
  • DELETE /keyboard/:id
    Supprime un clavier par son id.

  • GET /marques
    Récupère la liste des marques disponibles.

  • POST /order
    Passe une commande.
    Exemple de body :

    {
      "items": [
        { "id": 10, "quantity": 2 },
        { "id": 12, "quantity": 1 }
      ]
    }

    La commande est enregistrée dans ressources/orders.json avec le détail, le prix total, la date et l’état.


  • POST /register
    Ajoute un utilisateur.

  • POST /login
    Connexion d'un utilisateur.

  • POST /forgot-password
    Demander la réinitialisation du mot de passe.

  • POST /reset-password
    Réinitialiser le mot de passe.

  • GET /profil
    Obtenir les informations du profil.

  • PUT /profil Mettre à jour les informations du profil.

About

projet annuel KeyCraft, site web de vente de clavier custom français en e-commerce

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors