Front-end | Back-end | Creative developer

Arnaud Piette

Projet développement web

Mon Vieux Grimoire

API REST sécurisée avec Node.js, Express et MongoDB pour gérer des livres et leurs utilisateurs.

Stack technique

Contexte

Mon Vieux Grimoire est une application de référencement et de notation de livres. Le projet consistait à construire l’API back-end permettant de gérer les livres, les utilisateurs et leurs interactions, avec une attention particulière portée à la sécurité et à la gestion des données.

Objectifs

Architecture et composants

  1. Routes
  2. Middlewares
  3. Contrôleurs
  4. Modèles Mongoose
  5. MongoDB

Les routes dirigent les requêtes vers les middlewares, qui appliquent notamment l’authentification. Les contrôleurs portent la logique métier et s’appuient sur les modèles Mongoose pour structurer et enregistrer les données dans MongoDB.

Fonctionnalités

Challenge principal

Sécuriser les opérations de modification et de suppression en vérifiant à la fois l’authentification de l’utilisateur et sa propriété sur la ressource. Être connecté identifie l’utilisateur grâce au token JWT ; avoir le droit de modifier un livre précis nécessite ensuite que le contrôleur vérifie que son identifiant correspond au propriétaire de ce livre.

Solution apportée

La solution repose sur un middleware d’authentification qui vérifie le JWT et récupère l’utilisateur authentifié. Le contrôleur vérifie ensuite le propriétaire de la ressource. Les modèles Mongoose structurent les données, bcrypt hash les mots de passe, Multer reçoit les images et Sharp les optimise, avec validation et gestion des erreurs côté serveur.

Sécurité

Résultats

Améliorations possibles

À propos & Compétences

À propos

Je suis Arnaud Piette, directeur de création, directeur artistique et développeur web.

Mon parcours vient d’abord de la création avec 20 ans d’expérience dans le domaine : direction artistique, identité de marque, publicité, illustration, webdesign et conception d’expériences digitales. Au fil des projets, j’ai voulu aller plus loin que la conception graphique et être capable de comprendre et construire moi-même les interfaces que j’imaginais.

J’ai donc complété mon expérience créative par une formation de développeur web chez OpenClassrooms, avec des projets couvrant l’intégration responsive, JavaScript, React, Node.js, Express, les API REST, les bases de données, l’authentification, la sécurité, le SEO, les performances et l’accessibilité.

Cette double compétence me permet aujourd’hui d’aborder un projet de manière globale : comprendre le besoin, concevoir son identité et son expérience utilisateur, puis participer concrètement à son développement.

Des projets comme Kasa, Mon Vieux Grimoire ou Nina Carducci m’ont permis de consolider mes compétences techniques, tandis que mes expériences en direction artistique m’ont appris à défendre une intention, construire un système visuel cohérent et penser l’expérience du point de vue de l’utilisateur.

Je développe également Noon, un projet personnel d’assistant IA, qui me permet d’aller plus loin dans la conception produit, l’interface, l’architecture logicielle et l’expérimentation autour de l’intelligence artificielle.

Mon approche reste la même quel que soit le projet : chercher une solution claire, cohérente, utile et soignée jusque dans les détails.

Aujourd’hui, je souhaite mettre cette complémentarité création + développement au service de projets numériques où design et technique ne sont pas traités comme deux disciplines séparées.

Compétences

Front-end

Back-end

Contact

Une question ?