Skip to content

🌶️ Hot Takes – API sécurisée pour une application de critique de sauces piquantes ​

Piiquante

Contexte ​

En tant que développeur back-end indépendant, j’ai été missionné par la marque Piiquante pour développer une API REST sécurisée dans le cadre de leur nouvelle application web "Hot Takes". Cette plateforme permet aux utilisateurs de partager leurs sauces piquantes préférées, et d’interagir via un système de likes/dislikes.

Le front-end, développé en Angular, étant déjà finalisé, ma mission portait exclusivement sur la création du back-end de l’application, avec une attention particulière portée sur la sécurité.

Objectif ​

  • CrĂ©er une API REST complète (authentification, CRUD sauces, likes/dislikes)
  • Assurer la sĂ©curitĂ© des donnĂ©es utilisateurs (mots de passe hachĂ©s, contrĂ´le d’accès)
  • Stocker les sauces et leurs images avec gestion des fichiers
  • ImplĂ©menter une logique mĂ©tier robuste et Ă©volutive
  • Respecter le format strict attendu par le front-end Angular

Fonctionnalités clés ​

  • Authentification sĂ©curisĂ©e :

    • CrĂ©ation de compte avec hachage du mot de passe (bcrypt)
    • Connexion via JWT (JSON Web Token)
    • ContrĂ´le d’accès basĂ© sur l’userId
  • CRUD complet sur les sauces :

    • Ajout avec image (multer)
    • Modification avec ou sans nouvelle image
    • Suppression avec contrĂ´le d’auteur uniquement
    • Liste et dĂ©tail des sauces
  • Système de like/dislike :

    • Chaque utilisateur peut liker, disliker ou annuler son vote
    • EmpĂŞche les votes multiples par utilisateur
    • Mise Ă  jour des compteurs et des tableaux usersLiked et usersDisliked

Exigences respectées ​

  • âś… Mots de passe hachĂ©s (bcrypt)
  • âś… Utilisation de JWT pour protĂ©ger les routes sauce
  • âś… ContrĂ´le d’accès fin : modification/suppression uniquement par le crĂ©ateur

Liens utiles ​

Logo de Gitlab