Skip to content

Lab 1.3 : Construire le Cerveau du Projet ​

Module : 1.3 - Fournir du Contexte avec CLAUDE.md | ← SlidesDurée : 30 minutes Projet d'Exemple : node-express-mongoose-demo

Objectifs d'Apprentissage ​

À la fin de ce lab, vous serez capable de :

  • Créer un fichier CLAUDE.md pour un projet
  • Documenter les commandes de build, les instructions de test et les conventions de code
  • Vérifier que Claude suit vos instructions documentées

Prérequis ​

Configuration ​

bash
# Naviguez vers le projet d'exemple
cd sample-projects/node-express-mongoose-demo

# Assurez-vous d'être à la racine du projet
pwd

Tâche 1 : Créer le Fichier CLAUDE.md ​

Temps : 10 minutes

Créez un nouveau fichier CLAUDE.md à la racine du projet :

bash
touch CLAUDE.md

Ouvrez-le dans votre éditeur préféré et ajoutez les sections suivantes :

1. Construction & Exécution ​

markdown
# node-express-mongoose-demo - Instructions Claude

## Construction & Exécution
- `npm install` — Installer les dépendances
- `npm start` — Démarrer l'application (port 3000 par défaut)
- `npm run dev` — Démarrer avec nodemon pour le développement

2. Tests ​

markdown
## Tests
- `npm test` — Exécuter la suite de tests
- Les tests utilisent Mocha comme framework de test

3. Conventions de Code ​

markdown
## Conventions de Code
- Toutes les nouvelles fonctions doivent avoir des commentaires JSDoc
- Utiliser async/await au lieu des callbacks ou chaînes de promesses
- Suivre le pattern MVC existant : routes → contrôleurs → modèles

Tâche 2 : Ajouter du Contexte Spécifique au Projet ​

Temps : 10 minutes

Enrichissez votre CLAUDE.md avec du contexte supplémentaire :

Architecture ​

markdown
## Architecture
- Application web Express.js avec backend MongoDB
- Utilise Mongoose pour l'ODM (Object Document Modeling)
- Templates Pug pour le rendu côté serveur
- Authentification basée sur les sessions avec Passport.js

Problèmes Connus ​

markdown
## Problèmes Connus
- Le module `imager` est du code legacy pour le traitement d'images
- Une partie de la configuration est dans le répertoire `config/` (basée sur l'environnement)

Tâche 3 : Tester Votre CLAUDE.md ​

Temps : 10 minutes

Démarrez une nouvelle session Claude et vérifiez qu'il lit vos instructions :

bash
claude

Prompts de Test ​

Essayez ces prompts et vérifiez les réponses de Claude :

Prompt 1 :

Comment construire ce projet ?

Réponse Attendue

Claude devrait répondre avec npm install et npm start depuis votre CLAUDE.md.

Prompt 2 :

Comment lancer les tests ?

Réponse Attendue

Claude devrait mentionner npm test et Mocha.

Prompt 3 :

Écris une nouvelle fonction utilitaire qui valide les adresses email.

Réponse Attendue

Claude devrait inclure un commentaire JSDoc (suivant votre convention de code).


Critères de Réussite ​

  • [ ] Claude référence les bonnes commandes de build
  • [ ] Claude suit la convention JSDoc lors de l'écriture de nouveau code
  • [ ] Claude comprend l'architecture du projet

Conseils pour Réussir ​

À FaireÀ Éviter
Être spécifique : "Utiliser async/await"Être vague : "écrire du bon code"
Inclure les vraies commandes : npm run buildDire "construire le projet"
Expliquer les choses inhabituelles : "Ne pas modifier X parce que..."Laisser du code confus sans explication
Utiliser des titres, puces, blocs de codeÉcrire des murs de texte

Dépannage ​

Claude ne semble pas utiliser CLAUDE.md ​

  • Assurez-vous que le fichier est sauvegardé
  • Assurez-vous d'avoir lancé claude depuis le même répertoire que CLAUDE.md
  • Essayez de quitter et redémarrer Claude

Claude ignore une convention ​

  • Vos instructions directes priment sur CLAUDE.md
  • Essayez d'être plus spécifique dans CLAUDE.md
  • Rappelez à Claude : "N'oublie pas les conventions de code dans CLAUDE.md"

Avancé : Utiliser /init pour la Génération Automatique ​

Au lieu de créer CLAUDE.md manuellement, vous pouvez utiliser la commande /init :

bash
claude
/init

Claude analysera votre projet et générera un CLAUDE.md initial avec :

  • Commandes de build détectées
  • Commandes de test
  • Aperçu de la structure du projet
  • Conventions de base

TIP

Le fichier auto-généré est un point de départ. Revoyez-le toujours et personnalisez-le selon vos besoins spécifiques.


Avancé : Règles CLAUDE.md pour Problèmes Courants ​

Ajoutez ces règles à votre CLAUDE.md pour améliorer le comportement de Claude :

Réduire les Hallucinations (Lire Avant d'Éditer) ​

markdown
## Règles Importantes
- Ne JAMAIS proposer de modifications à du code non lu
- Toujours lire un fichier avant de l'éditer
- Si demandé de modifier un fichier, le lire d'abord pour comprendre les patterns existants

Ajuster l'Empressement ​

Claude Opus 4.5 est empressé et demande pardon plutôt que permission. Pour le rendre plus conservateur :

markdown
## Comportement
- Demander avant de faire de grands changements (>50 lignes)
- Confirmer la compréhension avant de modifier des fichiers critiques
- Préférer des changements petits et incrémentaux

Activer les Appels d'Outils en Parallèle ​

Pour une exécution plus rapide sur des opérations indépendantes :

markdown
## Performance
- Quand plusieurs tâches indépendantes sont demandées, les exécuter en parallèle
- Utiliser des appels d'outils en parallèle pour les lectures de fichiers qui ne dépendent pas les unes des autres

Avancé : Fichiers CLAUDE.md dans les Sous-répertoires ​

Vous pouvez placer des fichiers CLAUDE.md dans les sous-répertoires pour des règles localisées :

projet/
├── CLAUDE.md              # Règles pour tout le projet
├── src/
│   └── CLAUDE.md          # Règles spécifiques au frontend
├── api/
│   └── CLAUDE.md          # Règles spécifiques à l'API
└── tests/
    └── CLAUDE.md          # Règles spécifiques aux tests

Claude fusionne ces règles, avec les fichiers plus spécifiques (plus profonds) ayant la priorité.

WARNING

Utilisez /clear fréquemment pendant les longues sessions pour réinitialiser le contexte et maintenir la concentration.


Template CLAUDE.md Final ​

Voici l'exemple complet :

markdown
# node-express-mongoose-demo - Instructions Claude

## Construction & Exécution
- `npm install` — Installer les dépendances
- `npm start` — Démarrer l'application (port 3000 par défaut)
- `npm run dev` — Démarrer avec nodemon pour le développement

## Tests
- `npm test` — Exécuter la suite de tests
- Les tests utilisent Mocha comme framework de test

## Conventions de Code
- Toutes les nouvelles fonctions doivent avoir des commentaires JSDoc
- Utiliser async/await au lieu des callbacks ou chaînes de promesses
- Suivre le pattern MVC existant : routes → contrôleurs → modèles

## Architecture
- Application web Express.js avec backend MongoDB
- Utilise Mongoose pour l'ODM (Object Document Modeling)
- Templates Pug pour le rendu côté serveur
- Authentification basée sur les sessions avec Passport.js

## Structure des Répertoires
- `app/` — Code principal de l'application (contrôleurs, modèles)
- `config/` — Fichiers de configuration (basés sur l'environnement)
- `public/` — Assets statiques
- `test/` — Fichiers de test

Livrables ​

À la fin de ce lab, vous devriez avoir :

  1. Un fichier CLAUDE.md à la racine du projet
  2. Vérifié que Claude suit vos instructions documentées
  3. Une compréhension de comment CLAUDE.md améliore les réponses de Claude

Prochaines Étapes ​

Après avoir complété ce lab, passez au Lab 1.5 : Relier les Points.

TIP

Le Module 1.4 (Skills) est optionnel et peut être couvert séparément.

Claude for Coders Training Course