Normes de composants frontend

VérifiéSûr

Applique les conventions de domaine frontend pour les composants Svelte, les runes/attachements, l'UX des formulaires de routage et les modèles de test.

Spar Skills Guide Bot
DeveloppementIntermédiaire
25/07/2026
Claude Code
#svelte#component-library#sveltekit#frontend-testing#accessibility

Recommandé pour

Synthèse automatique

Ce skill applique les conventions frontend d'un projet Svelte/SvelteKit : API de composants, runes et attachments, UX de formulaires par routes, et modèles de tests.

Points forts

  • Cadre précis sur les props typées en module, la fusion de classes via cn() et l'usage de snippets pour le contenu projeté
  • Impose des runes ciblées ($state, $derived, $bindable, $effect minimal) et valide le code via le svelte-autofixer jusqu'à obtenir un résultat propre
  • Décrit une matrice de régression UI (thèmes clair/sombre, viewports étroits/larges, états vide/actif/erreur) pour les surfaces critiques
  • Oriente vers les form actions SvelteKit plutôt que des mutations côté client

Limites

  • Fortement couplé à une arborescence et à des fichiers de règles internes (rules/*.md, tokens.css) non fournis avec le skill
  • Suppose la disponibilité du serveur MCP svelte (list-sections, get-documentation, autofixer, playground-link)
  • Ne couvre pas le backend ni les workflows serveur/base de données, volontairement exclus
Quand l'utiliser

À utiliser lorsqu'on crée ou modifie un composant Svelte, une interaction de route ou un test frontend dans ce projet.

Quand l'éviter

À éviter pour du travail purement serveur, base de données ou intégration backend sans point de contact frontend.

Analyse de sécurité

Sûr
Score qualité85/100

The skill defines frontend component conventions and allowed tools are limited to Svelte MCP helpers plus normal file inspection/editing and test commands. It contains no destructive, exfiltration, obfuscated, or safety-disabling instructions.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

New badge variant
Add a new 'warning' variant to the Badge component in src/lib/components, using data-* attributes and tokens.css instead of Tailwind classes, and update its tests.
Fix reactivity
Refactor this Svelte component to use $state and $derived instead of the current $effect, then run the svelte autofixer until it reports clean.
Form action UX
Convert this client-side fetch mutation on the profile route into a SvelteKit form action with explicit success and error states, and add a .svelte.test.ts covering the error state.

name: component-standards description: Apply frontend domain conventions for components, Svelte runes/attachments, route form UX, and testing patterns. allowed-tools:

  • mcp__svelte__list-sections
  • mcp__svelte__get-documentation
  • mcp__svelte__svelte-autofixer
  • mcp__svelte__playground-link
  • Bash
  • Read
  • Edit
  • Write
  • Grep
  • Glob

Component Standards

When to use

  • Creating or modifying components under src/lib/components/**
  • Updating Svelte reactivity, attachments, or form UX behavior in frontend surfaces
  • Implementing route-level UI behavior in src/routes/** that affects component interactions
  • Writing or fixing frontend tests (*.svelte.test.ts, E2E UI flows)

Do not use

  • Pure server/database workflows
  • GitHub integration backends with no frontend touch points

Constraints

  • Follow {baseDir}/rules/component-library.md
  • Follow {baseDir}/rules/svelte-patterns.md and {baseDir}/rules/svelte-routes.md when route behavior is involved
  • Follow {baseDir}/rules/testing.md for frontend test environment selection
  • No Tailwind; use tokens from tokens.css
  • Variants via data-* attributes, not conditional utility classes

Operation modes

1) Component API and variants

  • Define props/types in <script lang="ts" module>
  • Merge external classes with cn() only
  • Use snippets for projected content (children, header, footer)
  • Shared components (cards, badges, headers, controls) must use the canonical implementation; do not fork per-page

2) Reactivity and attachments

  • Prefer $state, $derived, $bindable, and minimal $effect
  • Use {@attach} for DOM behavior and cleanup correctly
  • Re-run mcp__svelte__svelte-autofixer until clean

3) Route and form UX

  • Use SvelteKit form/action patterns with explicit success/error states
  • Ensure cache invalidation and streamed UI behavior are aligned with route rules
  • Avoid client-fetch mutations when form actions fit

4) Frontend testing and accessibility

  • Use the right environment (.svelte.test.ts for browser)
  • Cover keyboard interaction and ARIA expectations in tests
  • Keep deterministic fixtures and avoid brittle timing patterns
  • Critical surfaces must have tests covering light+dark themes, narrow+wide viewports, and empty/active/error states
  • Use documentation/testing/ui-regression-matrix.md permutation template for acceptance criteria

Workflow

  1. Inspect similar components/routes/tests for the existing pattern.
  2. Apply the smallest change that fits component + Svelte + testing rules.
  3. Update tests for the new or changed behavior.
  4. Run autofixer and targeted checks for touched frontend areas.

Verification

  • mcp__svelte__svelte-autofixer returns clean for changed .svelte files.
  • Tests exist or are updated for new props/variants/states.
  • Relevant frontend tests pass (for example bun run --cwd applications/web test:unit:client).
  • For critical surfaces: permutation coverage (theme, viewport, state) is documented in the ticket or pull request.

Additional references

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 annexes

Ce 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.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/frontend-component-standards-mrzxupqi/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/frontend-component-standards-mrzxupqi' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/frontend-component-standards-mrzxupqi/download' --output '.skill-downloads/frontend-component-standards-mrzxupqi/SKILL.md.part' && mv '.skill-downloads/frontend-component-standards-mrzxupqi/SKILL.md.part' '.skill-downloads/frontend-component-standards-mrzxupqi/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/frontend-component-standards-mrzxupqi/SKILL.md' && test -s '.skill-downloads/frontend-component-standards-mrzxupqi/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/component-standards' && cp -R '.skill-downloads/frontend-component-standards-mrzxupqi' '.claude/skills/component-standards'

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’OpenSkills
openskills install './.skill-downloads/frontend-component-standards-mrzxupqi'

openskills read 'frontend-component-standards-mrzxupqi'

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 sync

Mode 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/frontend-component-standards-mrzxupqi/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.

Skills similaires