learn.chetana.fr

Design system, i18n et la recette visuelle

12 min readCore

Les tokens : une seule source de vérité visuelle

Le principe appliquĂ© sur cette plateforme (et sa refonte lumineuse en une heure le prouve) : aucune couleur, espacement ou rayon en dur dans les composants — tout vit en CSS custom properties (--c-primary, --sp-4, --radius-md). Un composant consomme des tokens ; un thĂšme est un jeu de valeurs. Changer d'identitĂ© visuelle = changer un fichier ; le mode sombre = un data-theme qui rebinde les mĂȘmes noms.

Au-dessus des tokens, la hiĂ©rarchie atomic design dĂ©jĂ  croisĂ©e : atoms → molecules → organisms, avec la rĂšgle d'accĂšs (stores/API rĂ©servĂ©s aux Ă©tages hauts). Le projet copilot utilise NuxtUI + Tailwind 4 — mĂȘmes principes, bibliothĂšque industrialisĂ©e : on configure le thĂšme, on compose les composants fournis, on ne rĂ©invente pas un datepicker.

i18n : la discipline du jour 1

La leçon apprise sur les deux projets : l'internationalisation ne se rattrape pas, elle se commence. Les rÚgles :

  • zĂ©ro chaĂźne UI en dur : tout passe par t('quiz.check') — et cette plateforme a un test qui Ă©choue si les locales fr/en divergent (la symĂ©trie des clĂ©s, vĂ©rifiĂ©e en CI) ;
  • la locale du contenu est indĂ©pendante de la locale de l'UI (un cours de khmer dans une UI française) — deux axes, pas un ;
  • les pluriels, dates et nombres passent par les API i18n ({n} rĂ©sultat(s) gĂ©rĂ© par la lib, pas par des if).

La recette visuelle : l'Ɠil outillĂ©

Le maillon final observĂ© dans l'Ă©quipe copilot : le design se recette comme le code. Des tickets de retours visuels prĂ©cis (« palette fuchsia non conforme », « gap + position toggle »), des specs avec maquettes opposables, et des suites E2E qui verrouillent les parcours — pendant que la revue visuelle humaine se concentre sur ce que les tests ne voient pas : la cohĂ©rence, le rythme, le ressenti. Le design system rĂ©duit drastiquement la surface de cette recette : un composant corrigĂ© est corrigĂ© partout.

đŸ§© Quiz1/3

« Aucune couleur en dur dans les composants » permet


🃏 Flashcards1/4