Files
home_stock/docs/STYLEGUIDE.md
2026-01-28 19:22:30 +01:00

1.9 KiB

Guide de style

Ce guide définit les conventions de code et de documentation.


Légende des zones

  • <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer) : à compléter par toi selon le projet.
  • <A COMPLETER PAR AGENT> : à compléter par un agent spécialisé.

1. Nommage

  • Variables / fonctions : Backend = snake_case (Python PEP8), Frontend = camelCase (TypeScript/JavaScript standard)
  • Fichiers / dossiers : Backend = snake_case (item_service.py), Frontend = PascalCase pour composants (ItemCard.tsx), kebab-case pour autres (use-items.ts)
  • API endpoints : REST kebab-case /api/v1/items, /api/v1/item-categories, pluriel pour collections, singulier pour ressource unique

2. Formatage

  • Formatter / linter : Backend = ruff (format + lint) + mypy (types), Frontend = Prettier + ESLint + TypeScript strict
  • Règles principales : Indentation 4 espaces (Python), 2 espaces (TS/JS), ligne max 100 caractères, trailing commas, quotes doubles

3. Tests

  • Nommage des tests : Backend = test_<fonction>_<scenario>.py, Frontend = <module>.test.ts, fonctions de test descriptives test_create_item_with_valid_data
  • Structure des tests : Pattern AAA (Arrange/Act/Assert), fixtures pytest pour setup, mocks minimaux, tests isolés et reproductibles

4. Documentation

  • Doc obligatoire : README.md (démarrage), ARCHITECTURE.md (structure technique), fichiers CONTEXT (backend/frontend), ADR pour décisions structurantes
  • ADR : Suivre template docs/adr/TEMPLATE.md, numérotation séquentielle (0001, 0002...), statut (proposé/accepté/obsolète), contexte + décision + conséquences