Communitygithub.com

Système d'UI de Panier d'Achat

Concevoir un cadre de mise en page systématique, hautement accessible et optimisé pour la conversion, pour les paniers d'achat e-commerce, en définissant des structures spatiales pour les tiroirs de mini-panier coulissants, les pages de panier dédiées et les composants de liste d'articles.

Qu'est-ce que Système d'UI de Panier d'Achat ?

Ce système de conception d'interface utilisateur pour panier d'achat fournit un cadre structurel et visuel accessible et optimisé pour la conversion, conçu pour les plateformes e-commerce directes aux consommateurs (DTC) et multicanal. Il résout les points de friction courants du panier, tels que les décalages de mise en page inattendus (CLS), les résumés d'articles illisibles, les contrôles interactifs cachés sur mobile, les sélecteurs de quantité inaccessibles et l'absence d'un chemin psychologique clair vers le paiement. Le système prend en charge des composants clés comme un tiroir de mini-panier coulissant, une page de panier dédiée avec une grille à deux colonnes, une architecture de ligne d'article robuste, une barre de progression pour la livraison gratuite et des spécifications détaillées d'accessibilité (WCAG AA). En standardisant les mises en page, les micro-interactions et les règles d'accessibilité, ce système garantit une expérience de paiement cohérente, fiable et inclusive sur tous les appareils.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/coastdigitalgroup/coastai-skills/tree/HEAD/website-design/shopping-cart-ui-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 d'UI de Panier d'Achat ?

Objectif

Le système d'UI de panier d'achat fournit un cadre structurel et visuel accessible et à haute conversion pour les paniers d'achat e-commerce directs aux consommateurs (DTC) et multicanal. Agissant comme le pont transactionnel essentiel entre la découverte de produits (PDP) et la finalisation de la commande, le panier doit gérer élégamment les mises à jour de commandes, les incitations promotionnelles, les ventes croisées et les indicateurs de progression d'expédition en temps réel.

Une approche de conception systématique résout les points de friction standards du panier—tels que les décalages de mise en page inattendus (CLS) lors de la mise à jour des articles, les résumés d'articles illisibles, les contrôles interactifs cachés sur mobile, les sélecteurs de quantité inaccessibles et l'absence d'un chemin psychologique clair vers le paiement. Ce système garantit un style cohérent, des micro-interactions fluides, une résilience de mise en page et une adhésion stricte aux règles d'accessibilité WCAG AA.

Cas d'Utilisation

  • Portails E-commerce & DTC (Direct-to-Consumer) : Plateformes de vente au détail à fort trafic qui utilisent des mini-paniers persistants et des révisions de commande dédiées.
  • Commandes de Catalogues B2B & de Gros : Bureaux de commande groupée avec listes tabulaires, sélecteurs multi-SKU et outils d'ajout rapide.
  • Moteurs de Réservation de Services & d'Expériences : Organisation de billets multi-jours, réservations, modules complémentaires de location ou pass événementiels.
  • Regroupeurs de Logiciels, SaaS & Biens Numériques : Agrégation de licences, modules complémentaires de service et niveaux d'abonnement avant le paiement final.

Quand NE PAS Utiliser

  • Paiements à Article Unique ou en Un Clic : Pour les plateformes contournant le panier directement vers le paiement (par exemple, Apple Pay sur PDP), utilisez optimisation-du-flux-de-paiement et système-de-mise-en-page-des-détails-du-produit.
  • Navigation Principale de Produits : Pour présenter des cartes d'articles ou des listes de résultats, utilisez système-d-ui-de-carte et système-de-filtre-et-de-tri.
  • Comparaison de Produits Côte à Côte : Pour comparer des plans ou des fonctionnalités de produits distincts, utilisez système-de-matrice-de-comparaison ou système-d-ui-de-tableau-de-prix.
  • Commandes CSV en Gros de Produits : Pour des panneaux de saisie administrative tabulaires hautement spécialisés, utilisez système-d-ui-de-tableau-de-données.

Entrées

  1. Jetons de Conception E-commerce : Échelle typographique globale, palette de couleurs de marque (CTA principal, rouge d'avertissement, vert de succès), échelle d'espacement fluide et ombres portées de surface.
  2. Métadonnées SKU de Produit : Règles de rapport d'aspect d'image, contraintes de titre, chaînes de variation (par exemple, "Couleur : Onyx / Taille : L"), prix unitaire et états de vente/remise.
  3. Configurations de Logistique & d'Exécution : Seuils de livraison gratuite, règles de codes promo, estimations d'expédition et limites de quantité.
  4. Données de Catalogue de Ventes Croisées : Recommandations mappées par les articles actuels du panier pour alimenter les modules d'achat impulsif.
  5. Limites de la Fenêtre d'Affichage Mobile : Dimensions de l'appareil, directives de cible tactile et contraintes de zone de sécurité de l'environnement.

Sorties

  1. Tiroir de Mini-Panier Coulissant (Panneau Latéral Coulissant) : Plan directeur de grille au niveau du composant pour un aperçu rapide du panier et un paiement rapide axé sur le mobile.
  2. Page de Panier Dédiée (Grille Pleine Page) : Mise en page spatiale à 2 colonnes (Liste Principale du Panier + Résumé de la Commande) pour des révisions approfondies.
  3. Architecture de Ligne d'Article de Panier : Spécifications détaillées pour l'espacement, les mises en page, les contrôles de quantité interactifs et les éléments de suppression dans une seule ligne.
  4. Barre de Progression de Livraison Gratuite & Promotionnelle : Mise en page spatiale montrant un retour en temps réel et des seuils de message dynamiques.
  5. Spécifications de Routage A11y & de Lecteur d'Écran : Directives détaillées pour les pièges de focus, l'ordre de tabulation au clavier, le tabindex circulant, les annonces aria-live et les règles de cible tactile.

Flux de Travail

1. Définir la Mécanique Spatiale : Tiroir de Mini-Panier vs. Page de Panier Dédiée

Un design optimisé doit prendre en charge les deux formats visuels à fort impact en fonction de la taille de l'écran et du contexte :

  • Le Tiroir de Mini-Panier (Bureau & Mobile) : Glisse depuis le bord droit, couvrant les 400 à 460 pixels droits de l'écran sur bureau, et 100 % de l'écran sur mobile. Il superpose la fenêtre d'affichage principale derrière un arrière-plan semi-transparent (background: rgba(0,0,0,0.5)). Utilisez une mise en page élastique divisant le tiroir en trois zones fixes :
    • En-tête (Hauteur fixe) : Titre du panier (avec nombre), bouton de fermeture (✕) et indicateur de progression de livraison gratuite.
    • Articles de Ligne Défilables (Croissance Flex/Défilement automatique) : La liste des articles ajoutés (overflow-y: auto;).
    • Pied de Page (Hauteur fixe, ancré) : Sous-total, avis de taxes/expédition, message promotionnel et CTA de paiement bien en vue.
  • La Page de Panier Dédiée (Bureau >1024px) : Utilise une grille de mise en page asymétrique à 2 colonnes :
    • Colonne de Gauche (Occupe 60–65 %) : Contient une vue propre, de type tabulaire, alignée à gauche des articles du panier, incluant des actions de suppression en masse et des états vides.
    • Colonne de Droite (Occupe 35–40 %) : Abrite la carte de Résumé de la Commande collante (position: sticky; top: var(--hauteur-en-tete);), contenant les calculs de sous-total, l'expédition estimée, la saisie du code promo, les badges de paiement dynamiques et le bouton de paiement principal.

2. Concevoir l'Architecture de la Ligne d'Article de Panier

Chaque ligne du panier représente une hiérarchie miniature. Standardisez le flux de mise en page à l'intérieur d'un conteneur de largeur 100 % en utilisant CSS Flexbox ou Grid :

+-------------------------------------------------------------+
| [Vignette]     [Titre de l'article]              [Suppr. X] |
| (64x64px)      Taille : M / Couleur : Bleu                  |
|                                                             |
|                [-] [ 1 ] [+]                  [Prix]        |
|                (Saisie de quantité)           120,00 $       |
+-------------------------------------------------------------+
  • Vignette du Produit : Ancrez à l'aide d'un conteneur compact à rapport d'aspect fixe (64x64px jusqu'à 96x96px max) avec border-radius: var(--rayon-s) et object-fit: cover;. Assurez-vous que le texte alternatif est présent mais descriptif (par exemple, alt="Veste en laine bleu marine").
  • Pile de Métadonnées : Disposition verticale standard contenant :
    • Titre : Gras, neutre foncé, lié au PDP.
    • Attributs de variante : Gris atténué, taille de police plus petite (par exemple, 12px/0.75rem).
    • Prix unitaire : Discret si un seul article, mais mis en évidence si la quantité > 1.
  • Le Sélecteur de Quantité Accessible : Assurez-vous que les boutons sont plus grands que le texte typique. Enveloppez la saisie de valeur dans des bordures visuelles plates.
    • Bouton de Décrémentation (-), Champ de Saisie de Quantité (texte ou nombre), Bouton d'Inc rÉmentation (+).
    • Assurez-vous que le bouton de décrémentation se transforme en une icône de corbeille visible si la quantité est à 1, indiquant que cliquer dessus supprimera l'article du panier.
  • Prix de la Ligne : Alignez en bas à droite de la ligne. Si l'article est en solde, affichez le prix d'origine barré en gris clair directement à côté du prix de vente actif (rendu en rouge à fort contraste ou en gras de marque).
  • Le Bouton Supprimer : Placé en haut à droite de la ligne. Utilisez un aria-label="Supprimer [Nom de l'article] du panier" explicite pour éviter que les lecteurs d'écran n'annoncent uniquement "bouton" ou "X".

3. Construire le Moteur de Progression de Livraison Gratuite & Promotionnelle

Encouragez des valeurs moyennes de commande (AOV) plus élevées en donnant aux utilisateurs un retour instantané sur les objectifs de traitement :

  • Barre de Progression Visuelle : Utilisez un conteneur horizontal (hauteur: 8px) avec des extrémités arrondies, stylisé en gris clair, qui se remplit de gauche à droite en utilisant une couleur d'accentuation vive (par exemple, vert, bleu) à mesure que le sous-total de l'utilisateur s'approche de l'objectif.
  • Micro-Texte Dynamique : Rédigez des messages clairs et axés sur l'action au-dessus ou en dessous de la barre :
    • Sous le seuil : "Il vous manque 15,00 $ pour la Livraison Gratuite ! [Ajouter plus]"
    • Au-dessus du seuil : "🎉 Félicitations ! Vous avez débloqué la Livraison Gratuite !"
  • Emplacement de la Mise en Page : Positionnez le moteur de progression tout en haut du tiroir de mini-panier et de la page de panier principale afin qu'il reste visible au-dessus de la ligne de flottaison.

4. Optimiser le CTA de Paiement et le Résumé de la Commande

L'ancre de paiement est le point focal de l'expérience du panier d'achat. Assurez-vous qu'il se présente comme un bloc solide et fiable :

  • Liste des Calculs : Affichez le sous-total, les remises appliquées (texte vert avec badge de code promo, par exemple, SUMMER20 [x]), l'expédition estimée (ou "Calculé à la caisse"), et le total estimé final en utilisant des mises en page de liste clé-valeur avec des points de repère ou des grilles alignées.
  • Bouton de Paiement Principal : Contraste élevé, pleine largeur (100 %), avec une typographie en gras. Doit afficher des indicateurs de chargement clairs lors du clic (par exemple, convertir le texte du libellé "Paiement Sécurisé" en un spinner) pour éviter les doubles clics.
  • Badges de Paiement Pris en Charge : Badges d'icônes de paiement en niveaux de gris atténués ou en couleur standard (Visa, Mastercard, Amex, PayPal, Apple Pay, Klarna) directement sous le bouton de paiement pour établir la confiance.

5. Créer une Adaptation de Mise en Page Fluide et Réactive

Les paniers d'achat sont fortement utilisés sur mobile. Concevez les points de rupture avec une extrême précision :

  • Superposition du Mini-Panier Mobile : À une largeur de fenêtre <768px, forcez le mini-panier à occuper 100vw. Placez le déclencheur de fermeture explicitement dans une grande cible facile à taper en haut à gauche ou à droite.
  • Empilement des Articles de la Page de Panier : Sur les fenêtres mobiles, la ligne horizontale se rétracte :
    • La vignette du produit et le titre sont côte à côte.
    • Le sélecteur de quantité et le prix se rétractent sous le titre, avec la quantité alignée à gauche et le prix aligné à droite sur le même axe horizontal.
  • Tiroir de Paiement Mobile Fixe : Sur les pages de panier mobiles, implémentez un pied de page inférieur fixe qui ancre le sous-total et le CTA de paiement en toute sécurité au-dessus des éléments de l'interface utilisateur du navigateur, en utilisant padding-bottom: env(safe-area-inset-bottom);.

6. Établir le Routage du Focus Clavier et les Déclencheurs ARIA Live

Un panier inaccessible empêche les utilisateurs de lecteurs d'écran et de clavier uniquement de finaliser leurs achats.

  • Piège de Focus du Mini-Panier : Lorsque le tiroir du mini-panier est ouvert :
    1. Déclenchez immédiatement le focus sur le premier élément interactif (généralement le bouton Fermer ou le titre du premier article).
    2. Implémentez un piège de focus, empêchant les utilisateurs de tabuler vers des éléments cachés derrière l'arrière-plan.
    3. Piégez la touche d'échappement (Esc) pour fermer le tiroir. Remettez le focus proprement sur le bouton déclencheur qui a ouvert le panier (par exemple, l'icône du panier dans l'en-tête).
  • Annonces Dynamiques (aria-live) : Le basculement de la quantité, la suppression d'un article ou l'application d'un coupon doit immédiatement communiquer les mises à jour via un élément aria-live="polite" invisible. Les lecteurs d'écran doivent annoncer : "Quantité de la veste Onyx mise à jour à deux. Sous-total mis à jour à deux cent quarante dollars."
  • Anneaux de Focus : Évitez les contours de navigateur standard ; implémentez un indicateur de focus personnalisé, à fort contraste et non rogné, autour de tous les contrôles interactifs du panier.

Règles de Décision

Déclencheurs de la Page de Panier Dédiée vs. du Tiroir de Mini-Panier

Événement DéclencheurMotif de Réponse UX OptimalJustification de Conception
L'utilisateur ajoute un article depuis le PDPOuvrir le tiroir du mini-panierConfirme l'ajout réussi au panier, met à jour le sous-total instantanément, fournit un retour immédiat, mais les maintient sur le PDP pour continuer leurs achats.
L'utilisateur clique sur l'icône globale du panier dans l'en-têteBasculer le tiroir du mini-panier (si le nombre d'articles > 0) / Naviguer vers la page de panier (optionnel)Accès rapide pour modifier la liste des articles sans charger une nouvelle page. Si le catalogue est très complexe (par exemple, des centaines de pièces B2B), naviguez directement vers la page de panier dédiée.
Le panier est vide (0 article)Afficher l'état vide en ligne avec des CTAAu lieu d'une page blanche ou de fermer le tiroir, affichez un message clair (par exemple, "Votre panier est actuellement vide") accompagné de 3 à 4 liens d'achat principaux ciblés par catégorie.

Sélection du Style de Saisie de Quantité

Style d'InterfaceApplication du Cas d'UtilisationJustification de Conception
Bouton pas à pas [-] [ 1 ] [+]DTC, Commerce de détail, Vêtements, e-commerce standardInteraction la plus simple par simple pression sur mobile, évite les erreurs de saisie, incrémentation simple.
Champ de saisie de texte natifLourdes feuilles de commande de catalogue B2B, quantités de grosPermet à l'utilisateur de saisir directement de grands nombres arbitraires (par exemple, 150) au lieu de cliquer 150 fois.
Menu déroulant de sélection standard (Qté : 1) vArticles à prix élevé, électronique, abonnements à limite de quantité uniqueLimite les achats à des échelles de quantité prédéfinies (par exemple, max 10) et évite les demandes d'inventaire à nombre élevé non gérées.

Contraintes

  • Accessibilité (WCAG AA Minimum) :
    • SC 2.4.7 Focus Visible : Le tiroir du panier doit maintenir des contours de focus très visibles sur les boutons de fermeture, les ancres de titre, les pas à pas et les entrées.
    • SC 2.5.8 Taille des Cibles : Les cibles tactiles pour les boutons d'incrémentation (+) et de décrémentation (-) de quantité, les corbeilles de suppression et les liens de suppression de promotion doivent mesurer au moins 24x24px sur le bureau et 44x44px sur les fenêtres mobiles.
    • SC 1.1.1 Contenu non textuel : Chaque image doit avoir un texte alternatif clair. Les arrière-plans décoratifs à l'intérieur des états vides doivent être ignorés (role="presentation" ou alt="").
  • Prévention du Décalage Cumulatif de Mise en Page (CLS) :
    • Standardisez les hauteurs des articles de ligne ou réservez des hauteurs d'état squelette minimales pendant les états de chargement.
    • Les calculs promotionnels dynamiques ne doivent pas pousser le bouton CTA de paiement hors de l'écran ou le plier brusquement.
  • Verrouillage du Défilement de la Superposition Dynamique :
    • L'ouverture de la superposition du tiroir de mini-panier doit verrouiller le défilement d'arrière-plan sur l'élément body principal (overflow: hidden; appliqué au <body>). Cela empêche le double défilement et les artefacts de navigation sautants.

Modes d'Échec Courants

  • La Fermeture Fantôme du Panier : La fermeture du tiroir ou le clic en dehors de celui-ci réinitialise complètement l'index de focus, replaçant les utilisateurs de clavier tout en haut de la page sous-jacente et les forçant à retabuler tout.
  • La Cible de Suppression Cryptique : Concevoir des icônes de corbeille ou des déclencheurs de suppression "X" comme des symboles de texte non étiquetés, ce qui amène les lecteurs d'écran à produire "bouton" ou "bouton non étiqueté", empêchant les utilisateurs de nettoyer leur panier.
  • La Dérive de Mise à Jour Retardée : Permettre un délai entre le clic sur + et la mise à jour du prix sans afficher un indicateur de chargement. Si l'utilisateur clique sur + trois fois rapidement, le prix prend du retard par rapport à l'action et conduit à des totaux inexacts.
  • Le Clavier Mobile Bloqué : Centrer une entrée de coupon sur la page de panier dédiée dans une pile de mise en page qui se retrouve complètement bloquée ou poussée hors de l'écran visible lorsque le clavier du mobile est déployé. Utilisez toujours position: relative avec un défilement de conteneur dédié.

Positionnement par rapport aux Autres Systèmes

Système ConnexeRôle dans l'ÉcosystèmeComment il interagit avec le panier
système-de-mise-en-page-des-détails-du-produitPrésentation du produit principalSon CTA "Ajouter au panier" déclenche l'ouverture du mini-panier. Des jetons de conception partagés assurent une cohérence visuelle.
système-d-ui-de-carteNavigation dans le catalogueLes articles du panier reprennent l'esthétique des cartes mais dans un format de ligne condensé.
optimisation-du-flux-de-paiementFlux de paiementLe CTA du panier achemine l'utilisateur vers le flux de paiement ou l'écran de révision de commande.
système-de-matrice-de-comparaisonChoisir entre des optionsLes résultats de comparaison peuvent remplir un panier de type "construction" pour plusieurs SKU sélectionnés.

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