explanation/design-system.md

Design system & branding — la cohérence visuelle comme discipline

Cette page n'explique pas comment poser une palette ou choisir une typographie. Elle explique pourquoi un design system existe, et pourquoi le traiter comme une discipline d'ingénierie — plutôt que comme une décoration finale — change la nature d'un produit.

Le problème que résout un design system

Sans cadre partagé, chaque écran devient une décision isolée. Un bouton bleu ici, un bouton légèrement plus foncé là ; un espacement de 16 px sur une carte, de 18 px sur la voisine ; trois nuances de gris qui prétendent toutes être « le gris de fond ». Aucune de ces décisions n'est fausse prise isolément. Leur accumulation, elle, produit un produit qui semble négligé sans qu'on sache dire pourquoi.

Le design system répond à ce problème en déplaçant la décision : au lieu de choisir une couleur à chaque usage, on choisit une fois un jeu de valeurs, puis on ne fait plus que référencer ces valeurs. La cohérence n'est plus une vigilance de tous les instants ; elle devient une conséquence mécanique du système.

C'est là le glissement conceptuel central : la cohérence n'est pas un objectif esthétique, c'est une propriété structurelle. On ne l'obtient pas en « faisant attention », on l'obtient en supprimant la possibilité de diverger.

Contrainte plutôt que liberté

Une intuition contre-intuitive : un bon design system réduit le nombre de choix possibles, et c'est précisément ce qui le rend utile.

Prenons quelques exemples de contraintes assumées :

  • Une Ă©chelle typographique fermĂ©e (par exemple une suite fixe de tailles : 12 / 14 / 16 / 18 / 24 / 32 / 40) plutĂ´t qu'un continuum. On ne peut plus inventer un « presque titre » de 22 px : on prend la valeur au-dessus ou celle en dessous.
  • Un rythme vertical basĂ© sur un pas unique (typiquement des multiples de 8 px). Tout espacement devient un multiple de ce pas. Les alignements « Ă  peu près » deviennent impossibles par construction.
  • Un nombre limitĂ© de niveaux d'Ă©lĂ©vation (souvent trois au plus). On ne peut plus empiler des ombres jusqu'Ă  obtenir une soupe visuelle.

Chaque contrainte ferme une porte, et chaque porte fermée est une source d'incohérence en moins. La liberté totale de l'auteur d'écran est sacrifiée au profit de la prévisibilité de l'ensemble. C'est un marché délibéré, et c'est le bon.

Les tokens : rendre le système exécutable

Une charte graphique vit dans un PDF ; un design system vit dans le code. La pièce qui fait le pont s'appelle le token.

Un token est une valeur nommée par son rôle, pas par son apparence. On ne déclare pas « bleu #0B69FF » mais « couleur d'action primaire ». On ne déclare pas « gris clair » mais « surface de niveau 1 ». Cette indirection paraît triviale ; elle est en réalité le mécanisme qui rend le système maintenable :

  • Le rĂ´le survit au changement d'apparence. DĂ©cider que la couleur primaire vire du bleu au violet devient une modification d'une valeur, propagĂ©e partout oĂą le rĂ´le est rĂ©fĂ©rencĂ© — au lieu d'une chasse manuelle Ă  travers des dizaines de fichiers.
  • Le rĂ´le porte l'intention. « couleur de danger » dit pourquoi on l'emploie ; un code hexadĂ©cimal ne dit rien. Le code devient auto-documentĂ©.
  • Les rĂ´les se dĂ©clinent : Ă©tat par dĂ©faut, survol, actif, focus. Un mĂŞme rĂ´le logique couvre toute la vie interactive d'un Ă©lĂ©ment.

Structurer sa palette autour de familles cohérentes — des neutres pour les fonds, surfaces, textes et bordures ; une couleur primaire pour les actions et les liens ; des couleurs sémantiques pour succès, avertissement et danger — donne un vocabulaire fini et suffisant. On raisonne alors en rôles, jamais en couleurs brutes.

Le branding comme sédiment, pas comme vernis

On confond souvent branding et logo. Le branding perçu par un utilisateur n'est presque jamais le logo : c'est la somme des micro-décisions qu'il rencontre. La densité d'un tableau, la douceur d'une ombre, la vitesse d'une transition, la manière dont une erreur de formulaire lui est signalée.

Quelques mots-clés visuels — net, structuré, modulaire, lisible, fiable — ne sont pas des slogans : ce sont des critères de tri. Face à deux implémentations possibles d'un composant, on garde celle qui sert ces mots. Une transition de 200 ms en ease-out plutôt qu'un rebond spectaculaire, parce que « fiable » prime sur « impressionnant ». Un reveal discret plutôt qu'une animation gratuite, parce que l'animation doit servir la compréhension, pas la distraire.

Le branding est donc un sédiment : il se dépose décision après décision. Un design system est l'outil qui garantit que ces dépôts vont tous dans la même direction.

L'accessibilité n'est pas une couche optionnelle

C'est le point où beaucoup de systèmes échouent : ils traitent l'accessibilité comme une passe de conformité en fin de course. La discipline consiste à l'intégrer dans les contraintes elles-mêmes, de sorte qu'un composant accessible soit le chemin par défaut, pas l'exception.

Concrètement, cela veut dire que certaines règles ne sont pas négociables et sont encodées dans le système, pas laissées à la vigilance :

  • Contraste suffisant entre texte et fond (au moins 4.5:1 pour le texte courant). Les paires de tokens texte/surface sont validĂ©es Ă  ce seuil dès leur dĂ©finition, si bien qu'aucun assemblage autorisĂ© ne peut produire un texte illisible.
  • Focus toujours visible. Un anneau de focus net (un contour d'environ 2 px) fait partie du token d'Ă©tat, pas d'un ajout tardif. Retirer le focus visible pour des raisons esthĂ©tiques n'est pas une option offerte.
  • Parcours clavier complet. Toute action atteignable Ă  la souris l'est au clavier. Ce n'est pas une fonctionnalitĂ©, c'est une condition d'existence du composant.

Intégrée ainsi, l'accessibilité cesse d'être un coût ajouté : elle devient une propriété que le système ne peut pas ne pas avoir. C'est la différence entre « on a pensé aux lecteurs d'écran » et « il est impossible de livrer un écran qui les ignore ».

Un système, plusieurs surfaces

Un même design system doit habiller des contextes aux exigences opposées. Une page vitrine cherche l'impact et l'espace : peu d'éléments, respiration généreuse, hiérarchie claire vers un message. Un backoffice cherche la densité et l'efficacité : beaucoup d'informations, actions évidentes, retour immédiat.

Ce qui permet à un seul système de servir ces deux mondes, c'est justement qu'il est fait de tokens et de règles, pas de maquettes figées. Les mêmes rôles de couleur, la même échelle typographique, le même pas d'espacement se recomposent différemment. La vitrine étire le rythme vertical ; le backoffice le comprime. Mais aucun des deux n'invente ses propres valeurs. C'est cette invariance sous-jacente qui fait qu'un produit dense et un produit aéré restent, à l'œil, le même produit.

Ce qu'il faut retenir

Un design system n'est ni une charte ni une bibliothèque de composants jolis. C'est une discipline qui pose une thèse simple : la cohérence visuelle d'un produit ne se surveille pas, elle se construit — en fermant des choix, en nommant des rôles plutôt que des apparences, et en rendant l'accessibilité structurelle plutôt qu'accessoire.

Le jour où ajouter un écran incohérent demande plus d'effort que d'en ajouter un cohérent, le système a gagné.

Assistant documentaire

Posez une question sur la documentation. Les réponses citent leurs sources — un clic ouvre le document à gauche.