Interface Craft et Accessibilité
Aperçu
La norme est accessible, minimaliste et belle — par construction, pas par polissage. Le goût est inactionnable en règle générale, il est donc converti en contraintes, précédents et escalade. L'agent n'est pas invité à inventer du goût, seulement à respecter les contraintes et à escalader le reste.
Accessibilité — une Exigence, Pas une Couche de Finition
Règles vérifiables :
- Chaque élément interactif est atteignable au clavier avec un état de focus visible.
- Chaque contrôle a un nom accessible ; chaque champ de formulaire a une étiquette associée et des messages d'erreur clairs.
- HTML sémantique et points de repère plutôt que des
divà gogo. - Le contraste des couleurs respecte WCAG AA ; la signification n'est jamais transmise par la seule couleur.
- Respecter les préférences de mouvement réduit.
Beau et Minimaliste — en Tant que Contraintes, Pas de Vibes
- Cohérence par la contrainte. Utiliser les jetons du système de conception — espacement, échelle typographique, échelle de couleurs. Pas de nombres magiques uniques. La cohérence est l'esthétique.
- Les écrans existants sont le guide de style. Suivre le langage visuel établi avant d'inventer.
- Retenue (UI-YAGNI). Chaque élément mérite sa place ; supprimer jusqu'à ce que la suppression casse quelque chose. La hiérarchie et les espaces blancs plutôt que la densité et la décoration.
- Préférer les motifs de la bibliothèque de composants avant de construire une UI personnalisée.
- Deux éléments d'UI similaires → un composant paramétré. Les différences sont des props/variantes, jamais du copier-coller. Une troisième copie est un défaut. (DRY appliqué à l'interface.)
La Règle d'Escalade
Les décisions de goût escaladent ; elles ne sont jamais prises en freelance. Lorsqu'un choix est véritablement esthétique et sous-déterminé par les jetons ou le précédent, ne devinez pas en silence :
- Suivre le précédent existant le plus proche, ou
- Présenter des options (maquettes, comparaisons côte à côte) pour une décision humaine sur le goût.
Référence Rapide
| Situation | Faire |
|---|---|
| Nouveau composant ressemble à un existant | Paramétrer l'existant ; ne pas copier |
| Une valeur d'espacement/couleur n'est pas dans les jetons | Utiliser le jeton le plus proche ; ne pas inventer de nombre magique |
| Décision visuelle véritablement nouvelle | Escalader avec des options ; ne pas faire en freelance |
| Ajout d'un élément interactif | Clavier + focus + nom accessible, dès le départ |
Application : linting/tests d'accessibilité dans l'intégration continue (p.ex. eslint-plugin-jsx-a11y, axe) pour les règles vérifiables ; la retenue esthétique relève du jugement du relecteur via la règle d'escalade.
Raisonnement complet : Article VII de la constitution, regroupé dans engineering-constitution/references/engineering-constitution.md.