Verser un pattern
La bibliothèque n'a pas de base de données et pas de formulaire : le dépôt EST le formulaire. Un pattern, ce sont deux fichiers dans patterns/ — un fragment HTML autonome et son contrat JSON — plus, si sa charte est nouvelle, un jeu de jetons dans systems/. Vous ouvrez une pull request, elle est relue, elle est fusionnée. Licence MIT.
- Forkez et clonez.
gh repo fork lbachelotcapitalb/visual-lab --clone - Écrivez le fragment dans
patterns/<famille>-<NN>-<slug>.html. Autonome : son CSS voyage dans un<style>à l'intérieur du fichier, ses couleurs passent par des variables--vl-*, jamais par des valeurs en dur. Aucun script, aucune police distante, aucune image. - Écrivez le contrat dans le
.jsondu même nom (gabarit ci-dessous).avoid_whenvautwhen_to_use: un pattern qu'on ne sait pas refuser ne sert à rien. - Régénérez et vérifiez.
node bin/index.mjs && node bin/check.mjs <id>— l'index se reconstruit, les benchmarks se rejouent dans un vrai navigateur. - Ouvrez la pull request. Une pull request = un pattern (ou une charte + ses patterns). Décrivez ce que la composition résout, pas à quoi elle ressemble.
Forker le dépôt ↗ Ouvrir une pull request ↗ Proposer sans coder (issue) ↗
La nomenclature
Le nom de fichier porte la famille : card-12-inverted-kpi-row est de famille card, et l'index le vérifie. Le vocabulaire est fermé — huit familles, pas neuf :
diagram ≠ chart : un chart porte des données (une valeur mesurée décide de la géométrie), un diagram porte une structure (couches, flux, appartenance) où rien n'est proportionnel à quoi que ce soit.
Les médias
Un pattern déclare où il est censé servir — c'est une intention, la faisabilité se prouve par bin/emit.mjs --target <média>, qui refuse ce que la cible ne sait pas rendre :
Ce qui fait refuser une contribution
une couleur en dur au lieu d'un --vl-* | le fragment ne se thème plus |
| une police ou une image distante | zéro requête sortante est un invariant |
| du JavaScript dans le fragment | un pattern est une composition, pas un composant |
un avoid_when vide ou décoratif | sans lui le catalogue ne route plus |
| un binaire (PNG, capture) | une image est une copie morte, elle périme en silence |