Synthèse automatique
Référence de design system (Vuetify 4 + thème MD3) qui encadre le style, la mise en page et la vérification visuelle d'une application Vue, avec une « beauty pass » en sept règles vérifiables.
Points forts
- Règles contrôlables (échelle d'espacement fixe, hiérarchie par graisse et couleur, tokens de thème) plutôt qu'un jugement esthétique subjectif
- Ordre de préférence explicite : props Vuetify, puis classes utilitaires, puis transitions, puis `<style scoped>` en dernier recours
- Boucle de vérification visuelle par captures Puppeteer en desktop/mobile et clair/sombre
- Références séparées et ciblées : tokens, catalogue de composants, helpers de thème, vérification
Limites
- Fortement lié à une stack précise (Vuetify 4 + helpers de thème Devkit), peu transposable telle quelle
- Ne traite pas la création d'une identité de marque : la beauty pass vise à sortir du générique, pas à inventer un langage visuel
- N'est pas un workflow autonome ; la majorité de sa valeur passe par `/feature`
À utiliser pour toute tâche visuelle sur une app Vue/Vuetify : restylage, changement de thème, correction de layout ou feature comportant une composante visuelle.
À éviter pour définir une nouvelle direction artistique de marque ou pour travailler sur une stack qui n'est pas Vue/Vuetify.
Analyse de sécurité
SûrThis is a documentation/reference skill describing design system guidelines, Vuetify usage, and visual quality rules. It contains no executable commands, no tool declarations, no network or file-system operations, and no destructive or exfiltrating instructions. The only mention of Puppeteer is in a reference table for visual verification, but the skill itself does not execute anything.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
/ui — restyle the hero section on the home page: more generous whitespace, hierarchy through font weight and color instead of size, then verify in light and dark on desktop and mobile./ui — make dark mode the default theme and replace every hardcoded hex color in the dashboard components with theme tokens or CSS variables./ui — how should I style this card using Vuetify rather than custom CSS? Stick to the fixed spacing scale, the theme tokens, and the props-before-CSS order.name: ui description: > Design system reference for the Devkit Vue stack (Vuetify 4 + custom theme helpers). Use when asked about styling, theming, layout, design system, Vuetify components, visual verification, or UI patterns. Automatically consumed by /feature when the task has a visual component. Can also be invoked directly for design-only tasks (restyle, theme change, layout fix).
UI
Design system reference and visual quality guidelines for the Devkit Vue stack.
This is not a standalone workflow. For full feature implementation, use /feature which automatically applies these guidelines when visual work is involved.
Invoke /ui directly only for pure design tasks (restyle, theme change, layout fix) that don't need the full /feature workflow.
This skill is an enforcer of the design system (Vuetify 4 + MD3 + theme helpers) and a craft baseline — the "Beauty pass" below is teachable, encodable craft (not taste-by-vibes), the difference between correct and beautiful. Net-new brand identity (a bold landing aesthetic, a new visual language) still belongs to creative direction outside this skill; the Beauty pass makes the everyday output stop looking generic.
References
| What | File | Content |
|------|------|---------|
| Tokens, typography, spacing, breakpoints | references/design-system.md | Vuetify 4 MD3 classes, theme CSS variables, config paths |
| Component catalog | references/components.md | Home sections, core layout, module pattern, key Vuetify components |
| Theme helpers & code patterns | references/patterns.md | liquidGlassStyle(), style(), overlapStyle(), AOS, responsive |
| Visual verification | references/verification.md | Puppeteer screenshot flow, review checklist |
Key rules (quick reminder)
- Typography: MD3 classes only (
text-display-large, NOTtext-h1). Responsive:text-display-small text-sm-display-medium - Colors: Theme tokens via config or CSS variables (
rgb(var(--v-theme-primary))), never hardcoded hex in templates - Dark/light: Everything must work in both modes
- Config-driven: Prefer config options over hardcoded values
- CSS last resort: Prefer in order: Vuetify props (
flat,elevation,variant,density) → Vuetify utility classes (pa-0,d-flex) → Vuetify transitions (v-fade-transition,v-scale-transition) →<style scoped>only if no Vuetify alternative exists - Reuse: Check existing components before creating new ones
- Verify: Screenshot desktop+mobile, light+dark after visual changes
Beauty pass (correct → beautiful)
Consistency + accessibility make a UI correct; these seven rules make it beautiful. Each is a checkable rule with a named failure mode — the inverse of each is exactly what makes a layout read as generic. Apply on every visual surface; they need no bespoke CSS (Vuetify props, spacing classes, elevation, and theme tokens carry all seven). Deeper config levers to push past the generic Material look: references/design-system.md § "Beauty levers".
- Whitespace first, then reduce. Start generous, don't fill the viewport; cramped padding is the #1 generic tell. Lean on
pa-6/pa-8, sectionpy-12+. Context-calibrate: dense dashboards tighten, but never start cramped. - Hierarchy by weight + color, not size alone. Cap ~3 type sizes per view; de-emphasize secondary/tertiary with a lighter
text-medium-emphasis/ muted color, not just smaller. Size-only hierarchy is a slop signature. - Spacing on the fixed scale only. Use the spacing classes (steps
0→16= 4→64px); never an arbitrary inlinemargin: 13px. Off-scale spacing reads ad-hoc. - Color reserved for emphasis. Mostly-neutral base (tinted greys via
surface/background, not pure grey);primaryfor the ONE action that matters, not spread across the screen. Even color spread = the default-Material generic look. Never grey text on a colored background. - Depth = soft, two-part elevation. Prefer low
elevation-1/elevation-2(Vuetify's shadows are already the layered contact+ambient pair) orelevation-0+ a subtlesurfaceborder; overlap elements to layer. One harsh high-contrast shadow reads cheap. - Proximity groups related items (Gestalt). A field label sits tight to its input; a card's title/body/action cluster with less gap inside than between cards. Uniform spacing everywhere destroys grouping.
- Restraint over decoration. Fewer weights, one accent, generous rhythm — boring-and-consistent beats clever-and-busy. Delete an element before adding one.
These seven rules are the canonical craft baseline: name the visual intent when planning a surface, apply the rules while building, and score the rendered result against them in QA. This skill is where they're authored.
Anti-patterns
text-h1..text-h6→ use MD3:text-display-large,text-headline-medium- Hardcoded colors in templates → use theme variables
- New components for things existing ones already handle
- Ignoring dark mode
- Skipping visual verification
- Custom CSS when a Vuetify prop/class/transition covers the need
- Generic-look tells (Beauty pass inverses): cramped padding · hierarchy by size alone · color spread evenly instead of reserved for emphasis · one harsh shadow · arbitrary off-scale spacing · pure untinted greys · grey text on colored backgrounds
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/ui-design-system-ms47vo2p/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/ui-design-system-ms47vo2p' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/ui-design-system-ms47vo2p/download' --output '.skill-downloads/ui-design-system-ms47vo2p/SKILL.md.part' && mv '.skill-downloads/ui-design-system-ms47vo2p/SKILL.md.part' '.skill-downloads/ui-design-system-ms47vo2p/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/ui-design-system-ms47vo2p/SKILL.md' && test -s '.skill-downloads/ui-design-system-ms47vo2p/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/ui' && cp -R '.skill-downloads/ui-design-system-ms47vo2p' '.claude/skills/ui'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/ui-design-system-ms47vo2p'openskills read 'ui-design-system-ms47vo2p'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/ui-design-system-ms47vo2p/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Bonnes pratiques React Hook Form
Developpement
Maîtrisez React Hook Form : évitez les anti-patterns, gérez les abonnements, et traitez correctement reset, dirty state et entrées contrôlées.
Migration Emotion vers Mantine
Developpement
Migrer les styled-components Emotion vers des composants Mantine avec style props et modules CSS. Pour convertir .styled.tsx ou supprimer les imports @emotion.
Détecteur de dérive de périmètre
Developpement
Analyse les diffs git par rapport à une intention pour détecter la dérive de périmètre, fichiers non liés et PR trop larges, puis suggère de garder, diviser ou justifier.