Impeccable — Compétence de Conception Frontend
Conçoit et itère des interfaces frontend de qualité production. Code réel fonctionnel, choix de conception assumés, artisanat exceptionnel.
Basé sur pbakaus/impeccable (Apache 2.0), qui s'appuie sur la compétence de conception frontend d'Anthropic.
Configuration
Avant tout travail de conception ou modification de fichiers :
- Lire le contexte — Vérifier la présence de PRODUCT.md / DESIGN.md à la racine du projet. Si PRODUCT.md est manquant ou un placeholder (<200 caractères), suggérer à l'utilisateur d'exécuter
impeccable:teachd'abord. - Identifier le registre — Chaque tâche de conception est marque (marketing, landing, campagne, portfolio : la conception EST le produit) ou produit (UI d'application, admin, tableau de bord, outil : la conception SERT le produit). Identifier avant de concevoir.
- Charger la référence du registre — Utiliser la référence marque ou produit depuis les fichiers de référence de cette compétence selon le registre.
Commandes
Lorsque l'utilisateur invoque une commande impeccable spécifique (par exemple « auditez cette page », « polissez le checkout »), suivre le modèle : impeccable:<commande> [cible]. Chaque commande possède un fichier de référence dans le répertoire de référence de cette compétence.
| Commande | Catégorie | Description |
|---|---|---|
impeccable:craft [fonctionnalité] | Construction | Flux complet de conception puis construction avec itération visuelle |
impeccable:teach | Construction | Configuration unique : recueillir le contexte de conception, écrire PRODUCT.md et DESIGN.md |
impeccable:document | Construction | Générer DESIGN.md à partir du code existant du projet |
impeccable:extract [cible] | Construction | Extraire les composants et tokens réutilisables dans le système de conception |
impeccable:shape [fonctionnalité] | Construction | Planifier l'UX/UI avant d'écrire du code |
impeccable:critique [cible] | Évaluation | Revue de conception UX : hiérarchie, clarté, résonance émotionnelle |
impeccable:audit [cible] | Évaluation | Effectuer des contrôles de qualité technique (a11y, performances, responsive) |
impeccable:polish [cible] | Affinage | Dernière passe, alignement du système de conception et préparation à la livraison |
impeccable:bolder [cible] | Affinage | Amplifier les designs fades |
impeccable:quieter [cible] | Affinage | Atténuer les designs trop audacieux |
impeccable:distill [cible] | Affinage | Réduire à l'essentiel |
impeccable:harden [cible] | Affinage | Gestion des erreurs, i18n, débordement de texte, cas limites |
impeccable:onboard [cible] | Affinage | Flux de première utilisation, états vides, parcours d'activation |
impeccable:animate [cible] | Amélioration | Ajouter du mouvement intentionnel |
impeccable:colorize [cible] | Amélioration | Introduire de la couleur stratégique |
impeccable:typeset [cible] | Amélioration | Corriger les choix de polices, la hiérarchie, le dimensionnement |
impeccable:layout [cible] | Amélioration | Corriger la mise en page, l'espacement, le rythme visuel |
impeccable:delight [cible] | Amélioration | Ajouter des moments de joie |
impeccable:overdrive [cible] | Amélioration | Ajouter des effets techniquement extraordinaires |
impeccable:clarify [cible] | Correction | Améliorer le copy UX peu clair |
impeccable:adapt [cible] | Correction | Adapter pour différents appareils |
impeccable:optimize [cible] | Correction | Améliorations des performances |
impeccable:live | Itération | Mode variante visuelle : itérer sur des éléments dans le navigateur |
Routage
- Aucune cible spécifiée : Afficher le tableau des commandes groupées par catégorie, demander ce que l'utilisateur souhaite faire.
- Commande correspondante : Charger son fichier de référence depuis le répertoire reference/ de cette compétence et suivre ses instructions.
- Aucune correspondance mais lié au design : Appliquer les lois de conception partagées et la référence du registre directement.
Lois de Conception Partagées
Appliquer à chaque conception, tous registres confondus. Faire correspondre la complexité d'implémentation à la vision esthétique. Varier selon les projets ; ne jamais converger vers les mêmes choix.
Couleur
- Utiliser OKLCH. Réduire le chroma à mesure que la luminosité approche 0 ou 100 ; un chroma élevé aux extrêmes semble criard.
- Ne jamais utiliser
#000ou#fff. Teinter chaque neutre vers la teinte de la marque (chroma 0,005–0,01 suffit). - Choisir une stratégie de couleur avant de choisir les couleurs. Quatre étapes sur l'axe de l'engagement :
- Retenue : neutres teintés + un accent ≤10 %. Valeur par défaut du produit ; minimalisme de marque.
- Engagée : une couleur saturée porte 30–60 % de la surface. Valeur par défaut de la marque pour les pages centrées sur l'identité.
- Palette complète : 3–4 rôles nommés, chacun utilisé délibérément. Campagnes de marque ; visualisation de données produit.
- Trempée : la surface EST la couleur. Héros de marque, pages de campagne.
- La règle « un accent ≤10 % » ne s'applique qu'à la palette Retenue. Les palettes Engagée / Complète / Trempée la dépassent intentionnellement.
Thème
Sombre vs clair n'est jamais une valeur par défaut. Pas de sombre « parce que les outils ont l'air cool en sombre ». Pas de clair « pour être sûr ».
Avant de choisir, écrire une phrase de scène physique : qui utilise ceci, où, sous quelle lumière ambiante, dans quelle humeur. Si la phrase ne force pas la réponse, elle n'est pas assez concrète. Ajouter des détails jusqu'à ce que ce soit le cas.
« Tableau de bord d'observabilité » ne force pas une réponse. « SRE jetant un coup d'œil à la gravité d'un incident sur un écran 27 pouces à 2 h du matin dans une pièce sombre » le fait.
Typographie
- Limiter la longueur de ligne du corps à 65–75 ch.
- Hiérarchie via le contraste d'échelle + de poids (ratio ≥1,25 entre les niveaux). Éviter les échelles plates.
Mise en page
- Varier l'espacement pour le rythme. Le même padding partout, c'est la monotonie.
- Les cartes sont la solution de facilité. Ne les utiliser que lorsqu'elles sont vraiment la meilleure affordance. Les cartes imbriquées sont toujours erronées.
- Ne pas tout envelopper dans un conteneur. La plupart des choses n'en ont pas besoin.
Mouvement
- Ne pas animer les propriétés de mise en page CSS.
- Utiliser des courbes exponentielles pour l'ease-out (ease-out-quart / quint / expo). Pas de bounce, pas d'elastic.
Interdictions Absolues (Anti-Patrons)
Correspondre et refuser. Si vous êtes sur le point d'écrire l'un de ces éléments, le réécrire avec une structure différente.
- Bordures latérales.
border-leftouborder-right>1 px comme accent coloré sur les cartes, éléments de liste, encarts ou alertes. Utiliser des bordures complètes, des teintes d'arrière-plan, des numéros/icônes en tête, ou rien. - Texte dégradé.
background-clip: text+ dégradé. Décoratif, jamais significatif. Utiliser une seule couleur unie. Accentuation via le poids ou la taille. - Verre dépoli par défaut. Flous et cartes en verre utilisés de manière décorative. Rare et intentionnel, ou rien.
- Le modèle métrique héros. Grand nombre, petite étiquette, statistiques de support, accent dégradé. Cliché SaaS.
- Grilles de cartes identiques. Cartes de même taille avec icône + titre + texte, répétées à l'infini.
- Modale comme première idée. Les modales sont généralement de la paresse. Épuiser d'abord les alternatives en ligne/progressives.
Copy
- Chaque mot gagne sa place. Pas de titres reformulés, pas d'introductions qui répètent le titre.
- Pas de tirets cadratins. Utiliser des virgules, deux-points, points-virgules, points ou parenthèses.
Le Test Anti-Slop IA
Si quelqu'un pouvait regarder cette interface et dire « c'est l'IA qui a fait ça » sans aucun doute, c'est un échec.
Vérification de réflexe catégoriel — deux niveaux :
- Premier ordre : si quelqu'un pouvait deviner le thème + la palette à partir de la seule catégorie (« observabilité → bleu foncé », « santé → blanc + sarcelle », « finance → marine + or », « crypto → néon sur noir »), c'est le réflexe des données d'entraînement. Retravailler la phrase de scène et la stratégie de couleur jusqu'à ce que la réponse ne soit pas évidente du domaine.
- Second ordre : si quelqu'un pouvait deviner la famille esthétique à partir de la catégorie plus des contre-références (« outil de workflow IA qui n'est pas SaaS-crème → éditorial-typographique », « fintech qui n'est pas marine-et-or → mode sombre natif terminal »), c'est le piège un niveau plus profond. Le premier réflexe a été évité, mais pas le second. Retravailler jusqu'à ce que les deux réponses ne soient pas évidentes.
Fichiers de Référence
Des fichiers de référence détaillés sont disponibles dans le répertoire reference/ de cette compétence pour chaque commande et domaine de conception. Les charger avec skill_view(name='impeccable', file_path='reference/<nom>.md').
Références clés par domaine de conception (charger pour des explorations approfondies) :
reference/brand.md— Registre marque : marketing, landing, pages de campagnereference/product.md— Registre produit : UI d'application, tableaux de bord, outilsreference/typography.md— Systèmes typographiques, paires de polices, échelles modulaires, OpenTypereference/color-and-contrast.md— OKLCH, neutres teintés, mode sombre, accessibilitéreference/spatial-design.md— Systèmes d'espacement, grilles, hiérarchie visuellereference/motion-design.md— Courbes d'assouplissement, décalage, mouvement réduitreference/interaction-design.md— Formulaires, états de focus, modèles de chargementreference/responsive-design.md— Mobile-first, design fluide, container queriesreference/ux-writing.md— Étiquettes de boutons, messages d'erreur, états videsreference/cognitive-load.md— Réduire la charge cognitive dans les interfacesreference/heuristics-scoring.md— Rubrique d'évaluation heuristique de style Nielsen
Références spécifiques aux commandes (charger sur correspondance de commande) :
reference/craft.md— Flux complet conception puis constructionreference/shape.md— Planification UX/UI avant le codereference/teach.md— Configuration de PRODUCT.md et DESIGN.mdreference/document.md— Génération de DESIGN.md à partir du code existantreference/extract.md— Extraction de tokens dans le système de conceptionreference/critique.md— Revue de conception UXreference/audit.md— Contrôles de qualité techniquereference/polish.md— Dernière passe de qualitéreference/bolder.md— Amplification des designs sûrsreference/quieter.md— Atténuation des designs bruyantsreference/distill.md— Réduction à l'essentielreference/harden.md— Préparation à la productionreference/onboard.md— Flux de première utilisation et états videsreference/animate.md— Animation intentionnellereference/colorize.md— Introduction stratégique de la couleurreference/typeset.md— Corrections typographiquesreference/layout.md— Corrections de mise en page et d'espacementreference/delight.md— Personnalité et touches mémorablesreference/overdrive.md— Repousser les limites conventionnellesreference/clarify.md— Améliorations du copy UXreference/adapt.md— Adaptation aux appareilsreference/optimize.md— Performance UIreference/live.md— Itération de variante dans le navigateur
Outil CLI
Impeccable est également fourni avec un CLI autonome pour détecter les anti-patrons UI sans nécessiter d'agent IA :
npx impeccable detect src/ # analyser un répertoire
npx impeccable detect index.html # analyser un fichier HTML
npx impeccable detect https://example.com # analyser une URL (nécessite Puppeteer)
npx impeccable detect --fast --json . # uniquement regex, sortie JSON
Analyse les fichiers HTML, CSS, JSX, TSX, Vue, Svelte pour 25+ anti-patrons. Code de sortie 0 = propre, 2 = problèmes trouvés. Nécessite Node.js 18+.
Source
Original : github.com/pbakaus/impeccable Site web : impeccable.style