Studio

La charte
est exécutable.

Les valeurs de la charte ne se recopient pas : elles se compilent. Ces 21 outils lisent brand/tokens.json, produisent ce qui est livré, et vérifient ce qui l’est déjà.

21 outils

La charte

Aucune valeur n’est recopiée à la main. brand/tokens.json est la seule source, et ces outils la consomment. Les pages publiées ici sont générées : elles ne peuvent pas décrire une charte différente de celle qui est appliquée.

tokens

Compile les tokens en CSS et en configuration Tailwind pour les trois sites, alias historiques compris. Reconstruit ensuite tout le site publié : cet inventaire, la charte, l’identité des profils et l’accueil.

./toolbox.sh brand build./toolbox.sh brand tokens

contrast

sort en code d’erreur

Rejoue la matrice WCAG sur toutes les paires déclarées. Le turquoise et le jaune sont invisibles sur fond clair — 1,6:1 et 1,7:1 — et c’est ici que ça se voit avant la mise en ligne.

./toolbox.sh brand check

lint-brand

sort en code d’erreur

Vérifie la casse de NOMIX et de dépistons dans tout ce qui est livré, la graphie de « téléexpertise » — un seul mot, sans trait d’union — et qu’aucune capitalisation automatique ne s’applique à un texte qui porte la marque.

./toolbox.sh brand lint

logo

Décline les masters en toutes tailles, variantes et fonds. Zone de protection, cadrage carré et jeu d’icônes compris — favicon, apple-touch-icon, PWA, stores, avatar. La charte propose les mêmes exports depuis le navigateur, sous les mêmes noms de fichiers.

./toolbox.sh brand logos

Les sites

Tailwind ne génère que les classes qu’il a vues. Une classe ajoutée au balisage sans reconstruction cesse de marcher en silence : c’est la seule panne de ce dépôt qui ne prévient pas.

site-css

Compile une feuille unique par site depuis son balisage, et recopie les polices. Jamais le CDN Tailwind : les sites servent du CSS figé, pas un compilateur.

./toolbox.sh site build

site-check

sort en code d’erreur

Vérifie que le CSS committé correspond bien au balisage committé, puis que chaque classe présente dans le HTML a une règle qui la couvre. À lancer avant de rendre la main, toujours.

./toolbox.sh site check

css-audit

Cartographie ce qu’un token n’atteint pas encore : CSS écrit à la main, valeurs arbitraires, attributs style=. C’est la liste de ce qui reste à ramener dans la charte.

./toolbox.sh site audit

migrate-site

Applique la charte à un balisage existant. Idempotent, et --into travaille sur une copie tant qu’on n’a pas arbitré le résultat.

./toolbox.sh site migrate

Les visuels

De la photo brute au fichier à téléverser. Les originaux vivent hors du dépôt, dans RAW_MEDIA_PATH, et aucun outil ne les modifie.

photo

Planche-contact numérotée, information de source, et export aux formats des canaux. Le cadrage automatique n’est pas un centrage : le script mesure le détail local et fait glisser la fenêtre au bon ratio vers ce qui en porte le plus.

./toolbox.sh photo sheet./toolbox.sh photo info./toolbox.sh photo export./toolbox.sh photo formats

render

Compose un visuel fini au format exact d’un canal. Le contraste est mesuré sur ce qu’il y a réellement derrière le texte, pas supposé, et le renfort de voile est trouvé par pas successifs jusqu’à passer le seuil WCAG.

./toolbox.sh render one./toolbox.sh render brief./toolbox.sh render templates

social

Rend les avatars et couvertures des profils sociaux, vérifie les textes contre les limites de chaque plateforme, et publie la page qui les documente. L’avatar est construit pour le cercle, pas pour le carré.

./toolbox.sh social build./toolbox.sh social check

store

Rend les fiches boutiques des deux applications : un seul récit écrit dans le preset, décliné dans tous les créneaux qu’Apple et Google attendent — iPhone, iPad, téléphone et tablettes Android, feature graphic, icônes. Les châssis d’appareil sont dessinés depuis les tokens, pas importés. Les textes de fiche sont vérifiés contre la limite de chaque plateforme et le script sort en erreur au-delà.

./toolbox.sh store build./toolbox.sh store check

store-push

Range les visuels et les textes déjà rendus dans l’arborescence de fastlane, puis les téléverse sur l’App Store et le Play Store. N’envoie rien sans store push, et aucune des deux commandes ne soumet à la validation : les fiches restent en préparation. Sans identifiants, il annonce précisément ce qui manque plutôt que d’échouer à l’envoi, et store creds teste les clés en lecture seule. store pull rapatrie les textes depuis les boutiques — le dépôt est un miroir daté, pas une seconde source. store diff dit quels visuels en ligne diffèrent de ceux du dépôt, par empreinte.

./toolbox.sh store pull./toolbox.sh store diff./toolbox.sh store export./toolbox.sh store push./toolbox.sh store creds./toolbox.sh store key

mockup

Rend les en-têtes et les heros à la charte, pour arbitrer avant de toucher aux sites. Support d’arbitrage, jamais un livrable.

./toolbox.sh brand mockup

L’assistance modèle payant

Retouche assistée par modèle, pour ne plus ouvrir GIMP. Le modèle est celui de Gemini ; les originaux ne sont jamais modifiés et tout ce que l’outil produit tombe dans tmp/ai/. C’est le seul outil du dépôt qui coûte de l’argent : ai spend dit ce qui a été payé, depuis le registre versionné.

cutout
isole l’objet et livre un PNG à fond transparent, prêt pour le gabarit produit
extend
étend le cadre quand la photo n’a pas le ratio du format demandé
clean
retire un objet parasite, uniformise un fond
backdrop
génère un fond d’ambiance, sans photo source
./toolbox.sh ai <cutout | extend | clean | backdrop>
Estimer avant d’appeler

Toute commande qu’on n’a pas déjà jouée passe par --dry-run : elle annonce le coût et n’appelle rien. C’est gratuit, c’est le réflexe par défaut.

Sonder à une variante

Pour savoir si une consigne mord sur une photo, --variants 1 suffit. Les trois variantes servent à choisir une fois qu’on sait que ça marche.

Tâtonner sur le modèle bon marché

gemini-2.5-flash-image coûte 3,4 fois moins que le Pro. Toute exploration de consigne s’y fait ; on repasse en Pro pour le rendu retenu.

Regarder la source avant de payer

La moitié des échecs vient de la photo, pas de la consigne. Un objet en contre-plongée sur une table pleine cadre ne se détoure pas : lui retirer son support revient à inventer ce qu’il y a dessous.

Ne jamais relancer sans raison

Chaque résultat est mis en cache sur l’empreinte de la demande. Tout ce qui est local — seuil d’incrustation, contrôles, planches — s’itère gratuitement.

Le modèle ne choisit pas

Chaque commande produit N variantes numérotées et une planche-contact. La sélection reste humaine, et les variantes qui échouent aux contrôles partent au rebut au lieu d’être livrées.

La plomberie

Ce qu’on lance une fois, ou une fois par an. Rangé ici pour ne pas encombrer ce qui sert toutes les semaines.