This commit is contained in:
2026-01-27 20:37:55 +01:00
parent c4fd1e880a
commit 9f44605ed2
25 changed files with 839 additions and 43 deletions

30
PROJECT_CONTEXT.md Normal file
View File

@@ -0,0 +1,30 @@
# Contexte projet
Ce fichier est la source de vérité sur le contexte global du projet.
Il sert aux agents pour comprendre les objectifs et les contraintes.
---
## 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é architecture / dev.
---
## Résumé
- But du projet : <A REMPLIR - PROJET> (exemple: réduire les erreurs d'inventaire — a supprimer)
- Résultat attendu : <A REMPLIR - PROJET> (exemple: tableau de bord + alertes — a supprimer)
## Parties prenantes
- Décideur : <A REMPLIR - PROJET> (exemple: Directeur des opérations — a supprimer)
- Utilisateurs finaux : <A REMPLIR - PROJET> (exemple: équipe logistique — a supprimer)
## Contraintes
- Budget / délai : <A REMPLIR - PROJET> (exemple: 3 mois / 20k€ — a supprimer)
- Légalité / conformité : <A REMPLIR - PROJET> (exemple: RGPD — a supprimer)
- Tech imposée : <A REMPLIR - PROJET> (exemple: PostgreSQL — a supprimer)
## Références
- Vision : `product/VISION.md`
- Architecture : `docs/ARCHITECTURE.md`
- Backlog : `product/BACKLOG.md`

33
README.md Normal file
View File

@@ -0,0 +1,33 @@
# <Nom du projet>
Résumé court : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
---
## 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é architecture / dev.
---
## Objectif
- Problème : <A REMPLIR - PROJET> (exemple: suivi manuel sur tableur — a supprimer)
- Public cible : <A REMPLIR - PROJET> (exemple: PME logistique — a supprimer)
## Démarrage rapide
- Prérequis : <A COMPLETER PAR AGENT>
- Lancer en local : <A COMPLETER PAR AGENT>
## Documentation
- Contexte : `PROJECT_CONTEXT.md`
- Vision : `product/VISION.md`
- Architecture : `docs/ARCHITECTURE.md`
- Backlog : `product/BACKLOG.md`
- Workflow : `docs/WORKFLOW.md`
---
## Exemple (a supprimer)
- Résumé : application web interne pour gérer des stocks.
- Problème : suivi manuel sur tableur.
- Lancer en local : `make dev`.

View File

@@ -5,48 +5,62 @@ Ce dépôt est basé sur le template **template-webapp**.
## Étapes obligatoires
1. Renommer le projet (repo, README, docker-compose)
2. Compléter les sections ci-dessous
2. Compléter les fichiers de contexte et de vision
3. Lire `docs/ARCHITECTURE.md` avant toute écriture de code
---
## 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é architecture / dev.
---
## 1. Description du projet
- Nom du projet :
- Type de webapp :
- Public cible :
- Objectif principal :
- Nom du projet : <A REMPLIR - PROJET> (exemple: StockPilot — a supprimer)
- Type de webapp : <A REMPLIR - PROJET> (exemple: SaaS B2B — a supprimer)
- Public cible : <A REMPLIR - PROJET> (exemple: PME logistique — a supprimer)
- Objectif principal : <A REMPLIR - PROJET> (exemple: suivi des stocks en temps réel — a supprimer)
---
## 2. Contraintes fortes
- Self-hosted / Cloud :
- Mono-utilisateur / Multi-utilisateur :
- Self-hosted / Cloud : <A REMPLIR - PROJET> (exemple: Self-hosted — a supprimer)
- Mono-utilisateur / Multi-utilisateur : <A REMPLIR - PROJET> (exemple: Multi-utilisateur — a supprimer)
- Données sensibles : oui / non
- Contraintes légales (RGPD, etc.) :
- Contraintes légales (RGPD = Règlement Général sur la Protection des Données, etc.) : <A REMPLIR - PROJET> (exemple: RGPD + hébergement UE — a supprimer)
---
## 3. Stack envisagée (indicative)
- Frontend :
- Backend :
- Base de données :
- Stockage fichiers :
- Frontend : <A COMPLETER PAR AGENT>
- Backend : <A COMPLETER PAR AGENT>
- Base de données : <A COMPLETER PAR AGENT>
- Stockage fichiers : <A COMPLETER PAR AGENT>
---
## 4. Règles non négociables
- Monolithe modulaire
- ADR obligatoire pour toute décision structurante
- Monolithe modulaire (un seul dépôt, modules séparés)
- ADR obligatoire pour toute décision structurante (ADR = Architecture Decision Record)
- Backlog produit avant toute implémentation
---
## 5. Démarrage rapide
- Compléter `PROJECT_CONTEXT.md`
- Compléter `product/VISION.md`
- Compléter `docs/ARCHITECTURE.md`
- Créer les premières REQ dans `product/BACKLOG.md`
- Créer les premières REQ (exigences) dans `product/BACKLOG.md`
- Documenter les outils dans `outils_dev_pref.md`
---
## Exemple (a supprimer)
- Type de webapp : SaaS B2B.
- Contraintes : RGPD + hébergement UE.

View File

@@ -0,0 +1,49 @@
# Contexte backend
Ce document décrit le rôle du backend, ses responsabilités et ses choix techniques.
Tout ce qui est indiqué ici est la référence pour les agents backend.
---
## 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é backend.
---
## Objectif du backend
- Problème métier couvert : <A REMPLIR - PROJET> (exemple: suivi manuel sur tableur — a supprimer)
- Responsabilités principales : <A COMPLETER PAR AGENT>
- Hors périmètre : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Interfaces
- API publique (API = Interface de Programmation) : <A COMPLETER PAR AGENT>
- Authentification/autorisation : <A COMPLETER PAR AGENT>
- Intégrations externes : <A REMPLIR - PROJET> (exemple: ERP existant — a supprimer)
## Données
- Base(s) utilisée(s) : <A COMPLETER PAR AGENT>
- Modèle de données clé : <A COMPLETER PAR AGENT>
- Stratégie de migration : <A COMPLETER PAR AGENT>
## Architecture interne
- Style (monolithe modulaire, hexagonal, etc.) : <A COMPLETER PAR AGENT>
- Modules principaux : <A COMPLETER PAR AGENT>
- Couche daccès aux données : <A COMPLETER PAR AGENT>
## Qualité & exploitation
- Observabilité (logs/metrics/traces = journaux/mesures/traces) : <A COMPLETER PAR AGENT>
- Tests (unitaires/intégration) : <A COMPLETER PAR AGENT>
- Performance attendue : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Conventions
- Organisation du code : <A COMPLETER PAR AGENT>
- Nommage : <A COMPLETER PAR AGENT>
- Gestion erreurs : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- Style : monolithe modulaire avec modules `users`, `billing`, `catalog`.
- API : REST `/api/v1` + JWT (Jeton dauthentification).
- DB : PostgreSQL, migrations via outils natifs.

View File

@@ -0,0 +1,24 @@
# Modèle de données
Décrit les entités clés et leurs relations.
---
## Légende des zones
- `<A COMPLETER PAR AGENT>` : à compléter par un agent spécialisé backend.
---
## Entités principales
- Entité : <A COMPLETER PAR AGENT>
- Champs : <A COMPLETER PAR AGENT>
- Contraintes : <A COMPLETER PAR AGENT>
## Relations
- Relation : <A COMPLETER PAR AGENT>
- Cardinalité : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- `User` 1..N `Order`.

View File

@@ -0,0 +1,24 @@
# Contrat derreurs API
Ce document définit le format standard des erreurs.
---
## Légende des zones
- `<A COMPLETER PAR AGENT>` : à compléter par un agent spécialisé backend.
---
## Format
- Structure : <A COMPLETER PAR AGENT>
- Codes derreur : <A COMPLETER PAR AGENT>
- Messages utilisateurs vs techniques : <A COMPLETER PAR AGENT>
## Conventions
- Codes HTTP : <A COMPLETER PAR AGENT>
- Champs obligatoires : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- `{ "error": { "code": "VALIDATION_ERROR", "message": "Email invalide" } }`

View File

@@ -0,0 +1,24 @@
# Contrat de pagination
Ce document définit la pagination standard pour lAPI.
---
## Légende des zones
- `<A COMPLETER PAR AGENT>` : à compléter par un agent spécialisé backend.
---
## Stratégie
- Type (page/offset/cursor) : <A COMPLETER PAR AGENT>
- Paramètres : <A COMPLETER PAR AGENT>
## Réponse
- Structure des meta : <A COMPLETER PAR AGENT>
- Liens (next/prev) : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- Paramètres : `page=1&limit=20`.
- Meta : `total`, `page`, `page_size`.

View File

@@ -0,0 +1,42 @@
# Spécification API
Décrit les conventions dAPI côté backend et les règles de compatibilité.
---
## 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é backend.
---
## 1. Versioning
- Stratégie (URL, header, autre) : <A COMPLETER PAR AGENT>
- Politique de dépréciation : <A COMPLETER PAR AGENT>
## 2. Authentification
- Méthode (JWT = jeton, session, OAuth = délégation daccès) : <A COMPLETER PAR AGENT>
- Durée de session / refresh : <A COMPLETER PAR AGENT>
## 3. Conventions HTTP
- Codes derreurs : <A COMPLETER PAR AGENT>
- Idempotence (appel sans effet si répété) : <A COMPLETER PAR AGENT>
- Pagination : <A COMPLETER PAR AGENT>
- Tri/filtre : <A COMPLETER PAR AGENT>
## 4. Formats
- Format JSON : <A COMPLETER PAR AGENT>
- Dates / timezone : <A COMPLETER PAR AGENT>
- Naming (camelCase, snake_case) : <A COMPLETER PAR AGENT>
## 5. Contrats
- Erreurs : `contracts/errors.md`
- Pagination : `contracts/pagination.md`
- Modèle de données : `contracts/data_model.md`
---
## Exemple (a supprimer)
- Versioning : `/api/v1`.
- Dates : ISO-8601 en UTC.
- Erreurs : `{ "error": { "code": "VALIDATION_ERROR" } }`.

View File

@@ -0,0 +1,64 @@
# Architecture du projet
Ce document formalise larchitecture cible. Il doit être maintenu à jour.
Il sert de base aux décisions techniques, aux ADR et au découpage des tâches.
---
## 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é architecture.
---
## 1. Vue densemble
- Objectif produit : <A REMPLIR - PROJET> (exemple: améliorer la traçabilité — a supprimer)
- Type dapp (web, mobile, API) : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
- Contraintes fortes : <A REMPLIR - PROJET> (exemple: déploiement on-premise — a supprimer)
## 2. Principes darchitecture
- Principes non négociables : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
- Principes dévolution : <A COMPLETER PAR AGENT>
- Qualités prioritaires (performance, sécurité, scalabilité) : <A REMPLIR - PROJET> (exemple: sécurité et performance — a supprimer)
## 3. Architecture logique
- Modules principaux : <A COMPLETER PAR AGENT>
- Responsabilités par module : <A COMPLETER PAR AGENT>
- Frontend/Backend séparation : <A COMPLETER PAR AGENT>
## 4. Architecture technique
- Langages & frameworks : <A COMPLETER PAR AGENT>
- Base de données : <A COMPLETER PAR AGENT>
- Stockage fichiers : <A COMPLETER PAR AGENT>
- Infra cible (cloud/self-hosted) : <A REMPLIR - PROJET> (exemple: self-hosted — a supprimer)
## 5. Flux de données
- Flux principaux (lecture/écriture) : <A COMPLETER PAR AGENT>
- Intégrations externes : <A REMPLIR - PROJET> (exemple: ERP existant — a supprimer)
- Gestion des événements/asynchronisme : <A COMPLETER PAR AGENT>
## 6. Sécurité
- Authentification/autorisation : <A COMPLETER PAR AGENT>
- Données sensibles : <A REMPLIR - PROJET> (exemple: emails + historiques de paiement — a supprimer)
- Traçabilité/audit : <A COMPLETER PAR AGENT>
## 7. Observabilité
- Logs (journaux) : <A COMPLETER PAR AGENT>
- Metrics (mesures) : <A COMPLETER PAR AGENT>
- Alerting (alertes) : <A COMPLETER PAR AGENT>
## 8. Conventions de code
- Organisation des dossiers : <A COMPLETER PAR AGENT>
- Standards de code : <A COMPLETER PAR AGENT>
- Tests obligatoires : <A COMPLETER PAR AGENT>
## 9. Évolution & dette
- Zones à risque : <A REMPLIR - PROJET> (exemple: montée en charge — a supprimer)
- Améliorations prévues : <A REMPLIR - PROJET> (exemple: reporting avancé — a supprimer)
---
## Exemple (a supprimer)
- Modules : `auth`, `users`, `billing`, `catalog`.
- DB : PostgreSQL + migrations.
- Auth : JWT (jeton) + RBAC (contrôle daccès par rôle).

View File

@@ -0,0 +1,34 @@
# Déploiement
Décrit les environnements et le processus de déploiement.
---
## 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é DevOps.
---
## 1. Environnements
- Local : <A COMPLETER PAR AGENT>
- Staging (pré-production) : <A COMPLETER PAR AGENT>
- Production : <A COMPLETER PAR AGENT>
## 2. Pipeline CI/CD
- Étapes : <A COMPLETER PAR AGENT>
- Stratégie de release : <A COMPLETER PAR AGENT>
## 3. Configuration
- Variables denvironnement : <A COMPLETER PAR AGENT>
- Secrets : <A COMPLETER PAR AGENT>
## 4. Migrations
- Stratégie : <A COMPLETER PAR AGENT>
- Rollback (retour arrière) : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- CI/CD : tests -> build -> déploiement.
- Release : tag git + changelog.

View File

@@ -0,0 +1,38 @@
# Opérations / Runbook
Ce document décrit comment opérer le système au quotidien.
---
## 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é exploitation.
---
## 1. Démarrage / arrêt
- Commandes locales : <A COMPLETER PAR AGENT>
- Commandes production : <A COMPLETER PAR AGENT>
## 2. Supervision
- Logs (journaux) : <A COMPLETER PAR AGENT>
- Metrics (mesures) : <A COMPLETER PAR AGENT>
- Traces : <A COMPLETER PAR AGENT>
## 3. Alerting
- Seuils critiques : <A COMPLETER PAR AGENT>
- Canaux dalerte : <A REMPLIR - PROJET> (exemple: email + chat interne — a supprimer)
## 4. Sauvegardes & restauration
- Fréquence : <A REMPLIR - PROJET> (exemple: quotidienne — a supprimer)
- Procédure de restauration : <A COMPLETER PAR AGENT>
## 5. Incidents
- Procédure : <A COMPLETER PAR AGENT>
- Rôles & responsabilités : <A REMPLIR - PROJET> (exemple: admin système — a supprimer)
---
## Exemple (a supprimer)
- Logs : centralisés via Loki.
- Alertes : erreurs 5xx > 2% pendant 5 min.

View File

@@ -0,0 +1,16 @@
# Checklist PR
Avant de demander une revue, vérifier :
- Description claire et liée à un REQ (REQ = exigence produit)
- Tests exécutés et résultat indiqué
- Aucun secret dans le code
- Documentation mise à jour si nécessaire
- ADR ajouté si décision structurante
- Migration DB mentionnée si applicable (DB = base de données)
---
## Exemple (a supprimer)
- Tests : `make test`.
- REQ : REQ-012.

View File

@@ -0,0 +1,40 @@
# Sécurité
Décrit les exigences de sécurité et les règles de conformité.
---
## 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é sécurité.
---
## 1. Données & confidentialité
- Données sensibles : <A REMPLIR - PROJET> (exemple: emails + historiques de paiement — a supprimer)
- Classification des données : <A COMPLETER PAR AGENT>
- Conservation / suppression : <A REMPLIR - PROJET> (exemple: 12 mois — a supprimer)
## 2. Authentification / autorisation
- Modèle daccès : <A COMPLETER PAR AGENT>
- MFA (Multi-Factor Authentication = double facteur) / SSO (Single Sign-On = connexion unique) : <A REMPLIR - PROJET> (exemple: MFA non requis — a supprimer)
- Gestion des rôles : <A COMPLETER PAR AGENT>
## 3. Secrets & configuration
- Stockage des secrets : <A COMPLETER PAR AGENT>
- Rotation : <A COMPLETER PAR AGENT>
## 4. Sécurité applicative
- Validation des entrées : <A COMPLETER PAR AGENT>
- Protection CSRF/XSS (attaques web courantes) : <A COMPLETER PAR AGENT>
- Chiffrement en transit/au repos : <A COMPLETER PAR AGENT>
## 5. Journalisation & audit
- Événements audités : <A COMPLETER PAR AGENT>
- Rétention : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- Données sensibles : emails, adresses, historiques de paiement.
- Secrets : stockés dans un coffre, jamais en clair.

View File

@@ -0,0 +1,34 @@
# 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 : <A COMPLETER PAR AGENT>
- Fichiers / dossiers : <A COMPLETER PAR AGENT>
- API endpoints : <A COMPLETER PAR AGENT>
## 2. Formatage
- Formatter / linter : <A COMPLETER PAR AGENT>
- Règles principales : <A COMPLETER PAR AGENT>
## 3. Tests
- Nommage des tests : <A COMPLETER PAR AGENT>
- Structure des tests : <A COMPLETER PAR AGENT>
## 4. Documentation
- Doc obligatoire : <A REMPLIR - PROJET> (exemple: README + ARCHITECTURE — a supprimer)
- ADR (Architecture Decision Record) : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- Formatter : `prettier` + `eslint`.
- Tests : `feature_x.test.ts`.

62
docs/WORKFLOW.md Normal file
View File

@@ -0,0 +1,62 @@
# Processus de développement
Ce document standardise le workflow de dev pour faciliter la collaboration.
Il sert de référence aux agents et aux contributeurs.
---
## 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é architecture / dev.
---
## 1. Branches
- Convention de nommage : <A COMPLETER PAR AGENT>
- Branches protégées : <A REMPLIR - PROJET> (exemple: main — a supprimer)
- Politique de merge : <A COMPLETER PAR AGENT>
## 2. Commits
- Convention (ex: conventional commits) : <A COMPLETER PAR AGENT>
- Granularité attendue : <A REMPLIR - PROJET> (exemple: 1 feature par PR — a supprimer)
## 3. Pull Requests
- Template PR : <A COMPLETER PAR AGENT>
- Relectures requises : <A REMPLIR - PROJET> (exemple: 1 review — a supprimer)
- Checklist obligatoire : `docs/PR_CHECKLIST.md`
## 4. CI/CD
- Pipeline minimal (lint/test/build) : <A COMPLETER PAR AGENT>
- Vérifications bloquantes : <A COMPLETER PAR AGENT>
## 5. Releases
- Versioning (semver = versionnage sémantique) : <A COMPLETER PAR AGENT>
- Tagging : <A COMPLETER PAR AGENT>
- Release notes : `product/RELEASE_NOTES.md`
## 6. Qualité
- Definition of Done (définition de terminé) : <A REMPLIR - PROJET> (exemple: tests + doc — a supprimer)
- Tests obligatoires : <A COMPLETER PAR AGENT>
- Mises à jour doc : <A REMPLIR - PROJET> (exemple: si impact sur lAPI — a supprimer)
## 7. Hotfix / Urgence
- Procédure : <A COMPLETER PAR AGENT>
- Responsables : <A REMPLIR - PROJET> (exemple: lead dev — a supprimer)
---
## Références denvironnement (issues de `outils_dev_pref.md`)
- Hébergement Git : Gitea
- URL serveur Git : https://gitea.maison43.duckdns.org/
- Utilisateur Git : gilles
- Timezone : Europe/Paris
- Langue : francais
- Réseau local : 10.0.0.0/22
- Passerelle : 10.0.0.1
---
## Exemple (a supprimer)
- Branches : `main`, `develop`, `feat/*`, `fix/*`.
- Commits : Conventional Commits.
- CI : lint + tests + build.

View File

@@ -0,0 +1,24 @@
# ADR-0001 — Exemple (a supprimer)
- Statut : accepted
- Date : 2026-01-27
## Contexte
- Besoin dun framework API simple et maintenable.
## Décision
- Utiliser un monolithe modulaire.
## Alternatives considérées
- Microservices.
- Serverless (exécution sans serveur dédié).
## Conséquences
- Déploiement plus simple.
- Risque de croissance du monolithe.
## Impacts techniques
- Découper par domaines.
## Notes
- Revoir après 6 mois.

View File

@@ -3,14 +3,33 @@
- Statut : proposed | accepted | deprecated
- Date : YYYY-MM-DD
---
## 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é architecture.
---
## Contexte
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Décision
- <A COMPLETER PAR AGENT>
## Alternatives considérées
- <A COMPLETER PAR AGENT>
## Conséquences
- <A COMPLETER PAR AGENT>
## Impacts techniques
- <A COMPLETER PAR AGENT>
## Notes
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
---
## Exemple (a supprimer)
- Décision : choisir un monolithe modulaire.

View File

@@ -0,0 +1,45 @@
# Contexte frontend
Ce document décrit le rôle du frontend, ses responsabilités et ses choix techniques.
Tout ce qui est indiqué ici est la référence pour les agents frontend.
---
## 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é frontend.
---
## Objectif du frontend
- Parcours utilisateur principaux : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
- Responsabilités principales : <A COMPLETER PAR AGENT>
- Hors périmètre : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Interfaces
- API consommées (API = Interface de Programmation) : <A COMPLETER PAR AGENT>
- Authentification/autorisation : <A COMPLETER PAR AGENT>
- Intégrations externes : <A REMPLIR - PROJET> (exemple: ERP existant — a supprimer)
## Architecture UI
- Framework : <A COMPLETER PAR AGENT>
- Structure des pages : <A COMPLETER PAR AGENT>
- Gestion détat : <A COMPLETER PAR AGENT>
- Design system / UI kit (bibliothèque de composants) : <A COMPLETER PAR AGENT>
## Qualité & accessibilité
- Performance attendue : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
- Accessibilité (a11y = accessibilité web) : <A COMPLETER PAR AGENT>
- Tests (unitaires/E2E = tests de bout en bout) : <A COMPLETER PAR AGENT>
## Conventions
- Organisation du code : <A COMPLETER PAR AGENT>
- Nommage : <A COMPLETER PAR AGENT>
- Gestion erreurs : <A COMPLETER PAR AGENT>
---
## Exemple (a supprimer)
- Framework : React + Vite.
- Pages : `dashboard`, `settings`, `billing`.
- État : Zustand + React Query.

View File

@@ -9,47 +9,66 @@ Il sert de référence aux agents et aux contributeurs.
- OS principal : debian 13
- Éditeur / IDE : VS Code
- Shell :
- Terminal :
- Shell : <A REMPLIR>
- Terminal : <A REMPLIR>
---
## Outils backend
- Langage principal : python, go
- Framework API :
- ORM / DB access :
- Outils de test :
- Outils de lint / format :
- Framework API : <A REMPLIR>
- ORM / DB access : <A REMPLIR>
- Outils de test : <A REMPLIR>
- Outils de lint / format : <A REMPLIR>
---
## Outils frontend
- Framework UI :
- Bundler :
- Gestion état :
- Tests UI / E2E :
- Framework UI : <A REMPLIR>
- Bundler : <A REMPLIR>
- Gestion état : <A REMPLIR>
- Tests UI / E2E : <A REMPLIR>
---
## Préférences UI / Web
- Thème préféré : gruvbox, dark, vintage - monokai dark
- Couleurs dominantes :
- Style UI : (minimal, dense, dashboard, etc.)
- Couleurs dominantes : <A REMPLIR>
- Style UI : (minimal, dense, dashboard, etc.) <A REMPLIR>
- Accessibilité prioritaire : oui / non
---
## Paramètres projet
- Timezone : Europe/Paris
- Langue : francais
- Hébergement Git (Gitea/GitHub/GitLab) : Gitea
- URL serveur Git : https://gitea.maison43.duckdns.org/
- Utilisateur Git : gilles
- Réseau local : 10.0.0.0/22
- Passerelle : 10.0.0.1
- Notes sécurité (ex: pas de secrets en clair) : <A REMPLIR>
---
## Outils DevOps
- Conteneurs : Docker version 29.1.5 et ulterieur
- CI :
- Gestion secrets :
- Conteneurs : Docker version 29.1.5 et ultérieur
- CI : <A REMPLIR>
- Gestion secrets : <A REMPLIR>
---
## Notes
Tout outil ajouté ici est **autorisé par défaut** dans le projet.
---
## Exemple (a supprimer)
- Framework API : FastAPI.
- CI : GitHub Actions.

View File

@@ -8,12 +8,28 @@ Must | Should | Could | Wont
---
## 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é.
---
### REQ-XXX — <Titre>
- Description :
- Valeur utilisateur :
- Inclus / Exclus :
- Priorité :
- Statut :
- Impacts (FE/BE/DB/Arch) :
- Dépendances :
- Notes :
- Description : <A REMPLIR - PROJET> (exemple: permettre la connexion utilisateur — a supprimer)
- Valeur utilisateur : <A REMPLIR - PROJET> (exemple: accès sécurisé — a supprimer)
- Inclus / Exclus : <A REMPLIR - PROJET> (exemple: inclut login, exclut SSO — a supprimer)
- Priorité : <A REMPLIR - PROJET> (exemple: Must — a supprimer)
- Statut : <A REMPLIR - PROJET> (exemple: planned — a supprimer)
- Impacts (FE/BE/DB/Arch = Frontend/Backend/Base de données/Architecture) : <A COMPLETER PAR AGENT>
- Dépendances : <A REMPLIR - PROJET> (exemple: aucune — a supprimer)
- Notes : <A REMPLIR - PROJET> (exemple: MVP — a supprimer)
---
## Exemple (a supprimer)
### REQ-001 — Authentification
- Description : permettre la connexion utilisateur.
- Valeur utilisateur : accès sécurisé.
- Priorité : Must
- Statut : planned
- Impacts : FE/BE

View File

@@ -0,0 +1,21 @@
# Release notes
Historique des versions et changements majeurs.
---
## Légende des zones
- `<A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)` : à compléter par toi selon le projet.
---
## Version X.Y.Z — YYYY-MM-DD
- Highlights : <A REMPLIR - PROJET> (exemple: ajout login — a supprimer)
- Breaking changes (changements cassants) : <A REMPLIR - PROJET> (exemple: renommage dendpoint — a supprimer)
- Correctifs : <A REMPLIR - PROJET> (exemple: bug session — a supprimer)
- Migration : <A REMPLIR - PROJET> (exemple: exécuter scripts DB — a supprimer)
---
## Exemple (a supprimer)
- 0.1.0 — 2026-02-01 : MVP initial.

View File

@@ -0,0 +1,22 @@
# Roadmap
Ce document présente la planification macro par version ou trimestre.
---
## Légende des zones
- `<A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)` : à compléter par toi selon le projet.
---
## Format
- Version / période : <A REMPLIR - PROJET> (exemple: 2026-Q1 — a supprimer)
- Objectifs : <A REMPLIR - PROJET> (exemple: MVP fonctionnel — a supprimer)
- Features clés : <A REMPLIR - PROJET> (exemple: auth + dashboard — a supprimer)
- Risques : <A REMPLIR - PROJET> (exemple: dette technique — a supprimer)
---
## Exemple (a supprimer)
- 2026-Q1 : MVP (produit minimum viable) login + dashboard.
- 2026-Q2 : reporting avancé.

View File

@@ -0,0 +1,35 @@
# Vision produit
Ce document synthétise la vision et les objectifs long terme.
---
## Légende des zones
- `<A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)` : à compléter par toi selon le projet.
---
## Problème
- Problème principal : <A REMPLIR - PROJET> (exemple: suivi manuel sur tableur — a supprimer)
- Pourquoi maintenant : <A REMPLIR - PROJET> (exemple: croissance de léquipe — a supprimer)
## Utilisateurs cibles
- Personas : <A REMPLIR - PROJET> (exemple: gestionnaire stock — a supprimer)
- Besoins clés : <A REMPLIR - PROJET> (exemple: suivi + alertes — a supprimer)
## Proposition de valeur
- Promesse centrale : <A REMPLIR - PROJET> (exemple: inventaire fiable — a supprimer)
- Différenciation : <A REMPLIR - PROJET> (exemple: déploiement on-premise — a supprimer)
## Objectifs mesurables
- Indicateurs (KPI = indicateurs clés) : <A REMPLIR - PROJET> (exemple: taux dactivation 40% — a supprimer)
- Horizon temporel : <A REMPLIR - PROJET> (exemple: 90 jours — a supprimer)
## Non-objectifs
- Ce que le produit ne fera pas : <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
---
## Exemple (a supprimer)
- Problème : gestion manuelle des stocks.
- KPI : taux dactivation 40% en 90 jours.

View File

@@ -0,0 +1,42 @@
# TASK-001 — Exemple de tâche (a supprimer)
## Références
- PROJECT_CONTEXT.md
- docs/ARCHITECTURE.md
- product/BACKLOG.md → REQ-001
## Objectif
- Ajouter un écran de connexion basique.
## Non-objectifs
- SSO, MFA, reset de mot de passe.
## Périmètre
- Frontend : page login + validation.
- Backend : endpoint `/auth/login`.
## Description fonctionnelle
- Lutilisateur saisit email + mot de passe.
- En cas déchec : message clair.
## Spécifications techniques
- JWT signé en backend.
- Stockage token côté client.
## Fichiers autorisés
- `frontend/...`
- `backend/...`
## Critères dacceptation
- Connexion réussie pour un utilisateur valide.
- Erreur explicite pour identifiants invalides.
## Tests
- Test unitaire service auth.
- Test E2E login.
## Risques
- Gestion brute force.
## Sortie attendue
- PR avec tests + doc.

View File

@@ -5,22 +5,47 @@
- docs/ARCHITECTURE.md
- product/BACKLOG.md → REQ-XXX
## 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é.
## Objectif
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Non-objectifs
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Périmètre
- <A COMPLETER PAR AGENT>
## Description fonctionnelle
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Spécifications techniques
- <A COMPLETER PAR AGENT>
## Découpage
- Sous-tâches claires et indépendantes : <A COMPLETER PAR AGENT>
- Ordre de réalisation : <A COMPLETER PAR AGENT>
- Risques de blocage : <A COMPLETER PAR AGENT>
## Fichiers autorisés
- <A COMPLETER PAR AGENT>
## Critères dacceptation
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Tests
- <A COMPLETER PAR AGENT>
## Risques
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
## Sortie attendue
- <A REMPLIR - PROJET> (exemple: à personnaliser — a supprimer)
---
## Exemple (a supprimer)
- Objectif : permettre linscription utilisateur.
- Critères : email valide + confirmation affichée.