Communitygithub.com

Système de Propriétés et d'Attributs

Concevoir et implémenter un cadre systématique pour les métadonnées structurées "Clé : Valeur", garantissant la clarté numérique, l'alignement sémantique et une scannabilité adaptative pour les attributs d'entité.

Qu'est-ce que Système de Propriétés et d'Attributs ?

Ce système fournit une méthodologie pour concevoir et structurer des paires de métadonnées "Clé : Valeur" pour une entité unique, comme des spécifications produit, des listes immobilières ou des profils utilisateur. Contrairement aux systèmes multi-éléments comme `data-table-ui-system`, il se concentre sur la hiérarchie interne et l'organisation spatiale des attributs d'un seul objet. Le système guide l'utilisateur à travers la catégorisation, le choix d'un motif de mise en page (horizontale, verticale, grille), l'établissement d'une hiérarchie visuelle claire entre les clés et les valeurs, et la planification des transformations responsives. Il impose des règles de décision comme l'"axe" d'alignement des valeurs et la gestion des états vides, tout en respectant des contraintes d'accessibilité (utilisation de `<dl>`, `<dt>`, `<dd>`) et de contraste WCAG AA. Le résultat est une spécification complète incluant un blueprint sémantique et une stratégie de regroupement pour garantir que les attributs soient scannables, visuellement distincts du texte narratif et intègres sur différentes largeurs d'écran.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/coastdigitalgroup/coastai-skills/tree/HEAD/website-design/property-and-attribute-system

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait Système de Propriétés et d'Attributs ?

Objectif

Le système de propriétés et d'attributs fournit une méthodologie pour concevoir et structurer des paires de métadonnées "Clé : Valeur" pour une entité unique (par exemple, spécifications produit, caractéristiques immobilières, détails utilisateur). Alors que data-table-ui-system gère les comparaisons multi-éléments, ce système se concentre sur la hiérarchie interne et l'organisation spatiale des attributs appartenant à un seul objet. Il garantit que les métadonnées critiques sont scannables, visuellement distinctes du texte narratif et conservent une intégrité structurelle sur différentes largeurs de fenêtre.

Cas d'Utilisation

  • Spécifications Produit : Affichage des dimensions, matériaux et détails techniques sur une page détaillée du produit (PDP).
  • Annonces Immobilières : Organisation des caractéristiques d'un bien (Chambres, Salles de bain, Surface, Année de construction).
  • Profils Utilisateur : Affichage des métadonnées du compte (Date d'inscription, Rôle, Statut d'abonnement).
  • Journaux de Transactions / Audit : Affichage des attributs spécifiques d'un événement ou d'une commande.
  • En-têtes de Projet : Résumé des métadonnées du projet dans un en-tête ou une barre latérale.

Quand NE PAS Utiliser

  • Comparaisons Multi-éléments : lorsque les utilisateurs doivent comparer des attributs sur plusieurs lignes ; utilisez data-table-ui-system.
  • Contenu Narratif : pour des descriptions longues ou des histoires ; utilisez article-layout-system.
  • Navigation Globale : pour la structure du site ; utilisez site-navigation-system.
  • Formulaires Interactifs : lorsque l'objectif principal est la saisie de données ; utilisez form-design-system.

Entrées

  1. Inventaire des Attributs : La liste des clés (étiquettes) et des valeurs (données) à afficher.
  2. Matrice des Types de Données : Identifier si les valeurs sont des Chaînes, Nombres, Booléens, Icônes ou Liens.
  3. Classement par Priorité : Quels attributs sont "Primaires" (haute visibilité) vs "Secondaires" (détaillés/cachés).
  4. Contexte de Mise en Page : Cela se trouvera-t-il dans une barre latérale, une colonne de contenu principale ou une modale ?

Sorties

  1. Spécification de l'Anatomie de la Liste : Définition de la relation entre l'Étiquette (Clé) et la Valeur (Taille, Poids, Couleur).
  2. Matrice d'Alignement : Règles d'empilement horizontal vs vertical en fonction de la largeur du conteneur.
  3. Stratégie de Regroupement : Méthodologie pour catégoriser les grands ensembles d'attributs en sous-sections.
  4. Blueprint Sémantique : Mappage des attributs à la structure HTML de liste de description (<dl>).

Flux de Travail

1. Catégoriser et Regrouper les Attributs

Pour les entités avec plus de 5 à 7 attributs, regroupez-les en catégories logiques (par exemple, "Dimensions", "Performances", "Conformité"). Cela réduit la charge cognitive et permet aux utilisateurs d'accéder rapidement aux détails pertinents.

2. Choisir le Motif de Mise en Page

Sélectionnez un motif en fonction de l'espace horizontal disponible et de la densité des attributs :

  • Horizontal (Côte à côte) : Étiquette à gauche, Valeur à droite. Idéal pour les conteneurs larges et les étiquettes courtes.
  • Vertical (Empilé) : Étiquette en haut, Valeur en bas. Idéal pour les conteneurs étroits (barres latérales, mobile) et les valeurs longues.
  • Grille (Multi-colonnes) : Attributs disposés en grille de 2 ou 3 colonnes. Idéal pour les statistiques d'"aperçu rapide" de haute densité.

3. Établir une Hiérarchie Visuelle

Distinguez la "Clé" de la "Valeur" :

  • L'Étiquette (Clé) : Utilisez une couleur atténuée, une taille de police plus petite ou un style en majuscules pour indiquer qu'il s'agit d'un descripteur.
  • La Valeur (Données) : Utilisez une couleur plus contrastée, une graisse plus épaisse ou une taille plus grande pour garantir que les données réelles sont le principal point focal.
  • Séparation : Utilisez des séparateurs subtils ou un rythme vertical cohérent (--space-s à --space-m) pour séparer les paires.

4. Définir l'Alignement et la Scannabilité

  • Alignement Horizontal : Pour les dispositions côte à côte, alignez les étiquettes à gauche. Si les étiquettes varient considérablement en longueur, envisagez une colonne d'étiquettes à largeur fixe pour créer un "axe" vertical propre pour les valeurs.
  • Justification : Évitez la "Justification Extrême" (Étiquette à l'extrême gauche, Valeur à l'extrême droite) dans les conteneurs larges, car cela oblige l'œil à parcourir une trop grande distance. Gardez-les étroitement appariées.

5. Planifier les Transformations Responsives

Les listes d'attributs sont les "métamorphes" de l'interface utilisateur :

  • Le Changement d'Empilement : Transition de l'horizontal (Bureau) au vertical (Mobile) pour éviter le chevauchement de texte ou le wrapping extrême.
  • L'Effondrement de la Grille : Les grilles multi-colonnes doivent se réduire à 1 ou 2 colonnes sur les écrans plus petits.

Règles de Décision

  • La Règle de l'"Axe" : Dans une liste horizontale, les valeurs doivent partager une ligne d'alignement vertical (axe) pour permettre à l'œil de scanner les données sans sauter.
  • Valeurs Vides : Ne laissez jamais une valeur vide. Utilisez "—" ou "Aucun" pour confirmer que l'attribut est intentionnellement vide, et non une erreur système.
  • Utilisation d'Icônes : N'utilisez des icônes que si elles fournissent une différenciation sémantique immédiate (par exemple, une icône "Règle" pour les dimensions). Évitez les icônes si elles ajoutent du bruit visuel sans clarté.
  • Logique de Densité : Utilisez la densité "Standard" (espacement de 16px) pour les profils généraux et la densité "Compacte" (espacement de 8px) pour les spécifications techniques et les tableaux de bord.

Contraintes

  • Accessibilité : Utilisez l'élément HTML <dl> (Liste de Description) pour la correction sémantique (<dt> pour les étiquettes, <dd> pour les valeurs). Cela garantit que les lecteurs d'écran communiquent la relation entre les paires.
  • Contraste : Les étiquettes et les valeurs doivent respecter les ratios de contraste WCAG AA (4,5:1). Même si l'étiquette est "atténuée", elle doit rester lisible.
  • Réactivité : Les listes ne doivent jamais déborder de la fenêtre. Le retour à la ligne du texte doit être géré avec élégance sans briser l'"axe" de la liste.

Schémas d'Échec Courants

  • Le "Flou Valeur/Étiquette" : Rendre l'étiquette et la valeur identiques en poids et en couleur, rendant impossible le balayage de la liste.
  • Justification Extrême : Pousser les valeurs vers le bord droit d'un écran large, les séparant de leurs étiquettes.
  • Abus de Tableau : Utiliser une <table> pour une liste d'attributs d'un seul objet, ce qui ajoute une surcharge de balisage inutile et est plus difficile à styliser de manière adaptative.
  • Alignement Incohérent : Mélanger l'empilement horizontal et vertical dans la même liste sans une rupture logique claire.
  • États Vides Manquants : Laisser une propriété vide, ce qui laisse l'utilisateur se demander si les données sont en cours de chargement ou simplement absentes.

Critères de Validation

  • Les étiquettes et les valeurs sont visuellement distinctes par le poids, la taille ou la couleur.
  • Les attributs sont marqués sémantiquement à l'aide de <dl>, <dt> et <dd>.
  • Les listes passent de l'empilement horizontal à vertical sur les fenêtres mobiles.
  • Les grands ensembles d'attributs sont regroupés en sous-catégories logiques.
  • L'alignement crée un "axe" vertical clair pour les valeurs de données.
  • Les états vides (par exemple, "—") sont définis pour les propriétés manquantes.
  • Les ratios de contraste pour tout le texte respectent les normes WCAG AA.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for progressive disclosure using accordions, ensuring structural integrity, visual affordances, and accessibility across different content densities and devices.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for long-form content, managing readability, vertical rhythm, and information density to ensure a superior reading experience.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for informational elements that communicate state (Badges) and categorization (Tags) with clarity and accessibility.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for non-overlay notifications, managing global announcements and contextual inline alerts to communicate system states without interrupting the user's flow.

coastdigitalgroup/coastai-skills

Design and implement a systematic, asymmetrical bento-grid layout framework to organize diverse content types cohesively while maintaining strict visual hierarchy, logical focus order, and responsive flexibility.

coastdigitalgroup/coastai-skills

Design a responsive, mobile-first bottom navigation bar and persistent action dock system for mobile websites and web applications, establishing spatial anchors, tab bar anatomy, badge indicators, thumb-zone ergonomics, safe area inset handling, active/inactive state contrast, and desktop responsive adaptation rules.

coastdigitalgroup/coastai-skills

Design a mobile-first bottom sheet overlay system with configurable detents, drag affordances, safe area padding, responsive desktop modal/popover adaptation, and WCAG AA accessibility compliance.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for secondary navigation trails that provide orientation, context, and one-click access to parent levels in deep information architectures.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for buttons and interactive triggers, managing visual hierarchy, variant logic, and action grouping to ensure clear intent and accessible interaction.

coastdigitalgroup/coastai-skills

Design a systematic framework for date and time selection, managing calendar grids, range pickers, and scheduling interfaces to ensure precision and accessibility.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for modular content containers that maintain hierarchy, structural integrity, and action alignment across variable content and responsive viewports.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for horizontal discovery components, managing navigation affordances, scroll behavior, and accessibility to ensure effective content density without compromising usability.

coastdigitalgroup/coastai-skills

Design a systematic, highly accessible, and developer-friendly UI layout framework for code blocks, snippet showcases, multi-file code tabs, line-highlighting, diff views, and syntax token contrast in technical documentation and developer platforms.

coastdigitalgroup/coastai-skills

Design a systematic framework for global command menus (Cmd+K panels) that combines keyboard-driven navigation, command execution, and shortcut discovery into an accessible, responsive overlay.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for threaded conversations, managing nesting depths, action hierarchies, and community signaling to foster engagement and readability.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for side-by-side comparison interfaces, managing high attribute density and responsive complexity to support informed decision-making.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for user privacy, managing consent banners, preference centers, and persistent privacy controls to balance legal compliance with user trust.

coastdigitalgroup/coastai-skills

Design and implement a systematic, highly accessible, and responsive visual layout framework for conversational chat widgets, live chat boxes, and chatbot panels that ensures clear message scannability, native focus flow, and seamless mobile keyboard adaptation.

coastdigitalgroup/coastai-skills

Design a systematic, accessible, and high-conversion framework for custom select dropdowns and comboboxes, defining anatomy, states, search-filtering, and responsive mobile-adaptive patterns.

coastdigitalgroup/coastai-skills

Design and implement a systematic color palette that ensures WCAG 2.2 accessibility compliance. Trigger this skill when asked to define brand colors, create UI themes, or establish a visual system for a website.

Skills associés