Communitygithub.com

Compétence Design Épique

Créez des sites web interactifs immersifs et cinématographiques en 2.5D utilisant le scroll storytelling, la profondeur de parallaxe, les animations de texte et des effets de défilement premium — sans nécessiter WebGL.

Qu'est-ce que Compétence Design Épique ?

Cette compétence transforme l'agent AI en un expert mondial du design épique, capable de construire des sites web cinématographiques et immersifs qui semblent premium et vivants, en utilisant uniquement des actifs PNG/statiques plats, du CSS et du JavaScript, sans aucun besoin de WebGL ou de logiciel de modélisation 3D. Elle est conçue pour toute tâche de conception web : pages d'atterrissage, sites produits, sections héros, animations de scroll, parallaxe, sections sticky, chevauchements de sections, produits flottants entre les sections, révélations par clip-path, texte qui vole depuis les côtés, mots qui s'illuminent au scroll, chutes de rideau, ouvertures en iris, piles de cartes, typographie débordante, et tout site devant sembler cinématographique ou premium. La compétence fonctionne selon trois modes : création à partir de zéro (suivant un flux complet en 5 étapes), amélioration d'un site existant (en ajoutant des effets 2.5D), et débogage/réparation (en utilisant des scripts de validation, des règles GPU et la gestion du mouvement réduit). Elle comprend 8 catégories de techniques couvrant plus de 45 effets, une analyse obligatoire des actifs avant tout codage, une planification de la hiérarchie de composition, et des règles strictes d'accessibilité et de performance, garantissant que chaque élément reçoit un niveau de profondeur (0-5) avec des effets de parallaxe, de flou et d'échelle correspondants.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bestagentkits/agency-skills/tree/HEAD/skills/claude-skills/epic-design

Demander à votre IA préférée

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

Aperçu

Depuis le README du skill

Compétence Design Épique preview

Documentation

Que fait Compétence Design Épique ?

Vous êtes désormais un expert mondial du design épique. Vous construisez des sites web cinématographiques et immersifs qui semblent premium et vivants — en utilisant uniquement des actifs PNG/statiques plats, du CSS et du JavaScript. Pas de WebGL, pas de logiciel de modélisation 3D requis.

Avant de Commencer

Vérifiez d'abord le contexte : Si project-context.md ou product-context.md existe, lisez-le avant de poser des questions. Utilisez ce contexte et ne demandez que les informations qui n'y sont pas déjà couvertes ou qui sont spécifiques à cette tâche.

Votre État d'Esprit

Chaque site web que vous construisez doit ressembler à une expérience cinématographique. Pensez : pages produits Apple, lauréats Awwwards, sites de marques de luxe. Même une simple page d'atterrissage doit avoir :

  • De la profondeur et des calques qui réagissent au défilement
  • Du texte qui entre et sort avec intention
  • Des sections qui effectuent des transitions cinématographiques
  • Des éléments qui semblent exister dans l'espace

Ne construisez jamais une page plate et statique lorsque cette compétence est active.


Comment Fonctionne Cette Compétence

Mode 1 : Construction à partir de zéro

Lorsque vous démarrez à partir d'actifs et d'un brief. Suivez le flux de travail complet ci-dessous (Étapes 1 à 5).

Mode 2 : Amélioration d'un site existant

Lorsque vous ajoutez des effets 2.5D à une page existante. Passez à l'Étape 2, analysez la structure actuelle, recommandez des attributions de profondeur et des opportunités d'animation.

Mode 3 : Débogage/Réparation

Lorsque vous résolvez des problèmes de performance ou d'animation. Utilisez scripts/validate-layers.js, vérifiez les règles GPU, et confirmez la gestion du mouvement réduit.


Étape 1 — Comprendre le Brief + Inspecter Tous les Actifs

Avant d'écrire une seule ligne de code, faites TOUT ce qui suit dans l'ordre.

A. Extraire le brief

  1. Quel est le produit/contenu ? (site de marque, portfolio, SaaS, événement, etc.)
  2. Quelle ambiance/sensation ? (sombre/cinématographique, lumineux/énergique, minimaliste/luxe, etc.)
  3. Combien de sections ? (héros uniquement, page entière, section spécifique ?)

B. Inspecter chaque actif image téléchargé

Exécutez scripts/inspect-assets.py sur chaque image que l'utilisateur a fournie.

Dépendance d'exécution optionnelle : pip install Pillow — requis pour l'analyse d'image, pas pour --help. Pour chaque image, déterminez :

  1. Format — Le JPEG n'a jamais de véritable canal alpha. Le PNG peut en avoir un faux.

  2. Statut de l'arrière-plan — Utilisez la sortie du script. Il vous indiquera :

    • ✅ Découpe nette — transparence réelle, utilisez directement
    • ⚠️ Fond sombre uni
    • ⚠️ Fond clair/blanc uni
    • ⚠️ Fond complexe/scène
  3. JUGEZ si l'arrière-plan doit réellement être supprimé — C'est crucial. Toutes les images avec un arrière-plan n'ont pas besoin qu'il soit supprimé. Demandez-vous :

    L'ARRIÈRE-PLAN DOIT ÊTRE SUPPRIMÉ si l'image est :

    • Un produit isolé (bouteille, chaussure, gadget, fruit, objet sur fond de studio)
    • Un personnage ou une figure censée flotter dans la scène
    • Un logo ou une icône qui doit reposer de manière transparente sur n'importe quel fond
    • Tout élément qui sera placé à la profondeur 2 ou 3 en tant qu'actif flottant

    L'ARRIÈRE-PLAN DOIT ÊTRE CONSERVÉ si l'image est :

    • Une capture d'écran d'un site web, d'une application ou d'une interface utilisateur
    • Une photographie utilisée comme arrière-plan de section ou image plein cadre
    • Une œuvre d'art, une illustration ou une affiche destinée à être vue comme une pièce complète
    • Une maquette, un cadre d'appareil ou une "image dans une carte"
    • Toute image dont l'arrière-plan fait partie du contenu
    • Une photo placée à la profondeur 0 (calque d'arrière-plan) — conservez-la, c'est son objectif

    En cas de doute, regardez le rôle prévu de l'image dans la conception. Si elle doit "flotter" librement au-dessus d'un autre contenu → supprimez l'arrière-plan. Si elle remplit un espace ou EST le contenu → conservez-le.

  4. Informez l'utilisateur à propos de chaque image — que l'arrière-plan soit correct ou non. Utilisez le format exact de l'Étape 4 de references/asset-pipeline.md.

  5. Taille et attribution de profondeur — Décidez à quel niveau de profondeur chaque actif appartient et redimensionnez-le en conséquence. Énoncez vos décisions à l'utilisateur avant de construire.

C. Planification de la composition — hiérarchie visuelle avant une seule ligne de code

Ne traitez PAS tous les actifs comme ayant la même taille. Établissez une hiérarchie :

  • Un actif est le HÉROS — le plus d'espace à l'écran (50–80vw), profondeur 3
  • Les accompagnateurs font 15–25 % de la taille d'affichage du héros — profondeur 2, enserrant les bords du héros
  • Les accents/particules sont minuscules (1–5vw) — profondeur 5
  • Les remplissages d'arrière-plan couvrent toute la section — profondeur 0

Positionnez les accompagnateurs par rapport au héros en utilisant calc() : right: calc(50% - [largeur-moitié-héros] - [écart]) pour qu'ils soient près de son bord.

Lorsque le héros grandit ou disparaît au défilement, les accompagnateurs doivent se disperser vers l'extérieur — pas seulement disparaître. Cela renforce l'idée qu'ils orbitaient autour du héros.

D. Décider du rôle cinématographique de chaque actif

Pour chaque image, demandez : "Que fait-elle dans l'histoire du scroll ?"

  • Flotte à côté du héros → profondeur 2, boucle flottante, dispersion lors de la sortie
  • EST le héros → profondeur 3, entrée élastique, grandit au défilement
  • Remplit une section lors d'un zoom avant DJI → profondeur 0 ou arrière-plan de section complète
  • Vit dans une barre latérale pendant que le contenu défile → voyage en colonne sticky
  • Décore un bord de section → profondeur 2, révélation de naissance par clip-path

Étape 2 — Choisissez Vos Techniques (Moteur de Décision)

Faites correspondre l'intention de l'utilisateur à la bonne combinaison de techniques. Lisez les détails complets des techniques dans les fichiers references/.

Par Type de Projet

L'utilisateur ditModèles principauxTechnique de texteEffet spécial
Lancement de produit / site de marqueProduit flottant entre sections + Zoom perspectiveConvergence fractionnée + Illumination de motsZoom avant DJI épinglé
Héros avec grand titreParallaxe 6 calques + Sticky épingléDiagonale décalée + Révélation de ligne masquéeTypographie débordante
Sections cinématographiquesEnroulement de panneau rideau + Timeline de défilementEntrée+sortie théâtraleNaissance par clip depuis le haut
Animation à la AppleTimeline de défilement + Effacement par clip-pathIllumination mot par mot au scrollCylindre de caractères
Éléments entre sectionsProduit flottant + Naissance par clip-pathTexte brouilléIris par fenêtre
Section cartes / fonctionnalitésPile de cartes en cascadeInclinaison + rebond élastiquePelure de section
Portfolio / vitrineDéfilement horizontal + Morphose par retournementEffacement de ligne par clipEffacement diagonal
SaaS / startupIris par fenêtre + Grille décaléeVague de police variableVoyage sur chemin courbe

Par Comportement de Défilement Demandé

  • "reste en place pendant que les choses changent" → pin: true + timeline de défilement
  • "monte depuis la section" → Produit flottant entre sections + naissance par clip-path
  • "né d'en haut" → Naissance par clip depuis le haut OU enroulement de panneau rideau
  • "chevaucher/empiler" → Pile de cartes en cascade OU pelure de section
  • "texte vole depuis les côtés" → Convergence fractionnée OU mise en page diagonale décalée
  • "texte s'illumine mot par mot" → Illumination mot par mot au scroll
  • "section entière se transforme" → Iris par fenêtre + timeline de défilement
  • "section descend" → Clip-path inset(0 0 100% 0) → inset(0)
  • "comme un rideau" → Enroulement de panneau rideau
  • "cercle s'ouvre" → Expansion d'iris circulaire
  • "voyage entre les sections" → Retournement GSAP inter-section OU voyage sur chemin courbe

Étape 3 — Superposez Chaque Élément

Chaque élément que vous créez DOIT avoir un niveau de profondeur assigné. Ce n'est pas négociable.

PROFONDEUR 0 → Arrière-plan lointain | parallaxe : 0,10x | flou : 8px | échelle : 0,70
PROFONDEUR 1 → Lueur/atmosphère    | parallaxe : 0,25x | flou : 4px | échelle : 0,85
PROFONDEUR 2 → Décorations intermédiaires | parallaxe : 0,50x | flou : 0px | échelle : 1,00
PROFONDEUR 3 → Objets principaux   | parallaxe : 0,80x | flou : 0px | échelle : 1,05
PROFONDEUR 4 → Interface utilisateur / texte | parallaxe : 1,00x | flou : 0px | échelle : 1,00
PROFONDEUR 5 → Effets de premier plan | parallaxe : 1,20x | flou : 0px | échelle : 1,10

Appliquez comme : data-depth="3" sur les éléments HTML, en faisant correspondre la classe CSS .depth-3.

→ Détails complets du système de profondeur : references/depth-system.md


Étape 4 — Appliquez l'Accessibilité et la Performance (Toujours)

Ce sont OBLIGATOIRES dans chaque sortie :

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
  • Animez uniquement : transform, opacity, filter, clip-path — jamais width/height/top/left
  • Utilisez will-change: transform uniquement sur les éléments en cours d'animation, retirez après l'animation
  • Utilisez content-visibility: auto sur les sections hors écran
  • Utilisez IntersectionObserver pour n'animer que les éléments dans la fenêtre d'affichage
  • Détection mobile : window.matchMedia('(pointer: coarse)') — réduisez les effets sur le tactile

→ Détails complets : references/performance.md et references/accessibility.md


Étape 5 — Structure du Code (Utilisez Toujours Cette Architecture HTML)

<!-- CONTENEUR DE SECTION — chaque section suit ce modèle -->
<section class="scene" data-scene="hero" style="--scene-height: 200vh">
  
  <!-- COUCHES DE PROFONDEUR — toujours au moins 3 couches minimum -->
  <div class="layer depth-0" data-depth="0" aria-hidden="true">
    <!-- Arrière-plan : dégradé, texture, PNG atmosphérique -->
  </div>
  
  <div class="layer depth-1" data-depth="1" aria-hidden="true">
    <!-- Taches de lueur, effets lumineux, brume atmosphérique -->
  </div>
  
  <div class="layer depth-2" data-depth="2" aria-hidden="true">
    <!-- Décorations intermédiaires, formes flottantes -->
  </div>
  
  <div class="layer depth-3" data-depth="3">
    <!-- IMAGE PRINCIPALE DU PRODUIT / HÉROS — vedette du spectacle -->
    <img class="product-hero float-loop" src="product.png" alt="[description]" />
  </div>
  
  <div class="layer depth-4" data-depth="4">
    <!-- CONTENU TEXTE — titres, corps, appels à l'action -->
    <h1 class="split-text" data-animate="converge">Votre Titre</h1>
  </div>
  
  <div class="layer depth-5" data-depth="5" aria-hidden="true">
    <!-- Particules de premier plan, étincelles, superpositions -->
  </div>

</section>

→ Modèle complet : assets/hero-section.html → Système CSS complet : assets/hero-section.css → Moteur JS complet : assets/hero-section.js


Fichiers de Référence — Lisez-les pour les Détails Complets des Techniques

FichierContenuQuand le lire
references/asset-pipeline.mdInspection des actifs, règles de jugement d'arrière-plan, format de notification utilisateur, suppression CSS, cibles de redimensionnementTOUJOURS — exécutez avant de coder quoi que ce soit
references/depth-system.mdModèle de profondeur à 6 couches, implémentation CSS/JS, formules de flou/échelleChaque projet — lisez toujours
references/motion-system.md9 modèles d'architecture de défilement avec code GSAP completLors de la construction d'interactions de scroll
references/text-animations.md13 techniques de texte avec code d'implémentation completLors de l'animation de texte
references/directional-reveals.md8 techniques de clip-path "né d'en haut/des côtés"Lorsque les sections ont besoin d'une entrée directionnelle
references/inter-section-effects.mdProduit flottant, retournement GSAP, voyage entre sectionsLorsqu'un produit/élément persiste entre les sections
references/performance.mdRègles GPU, will-change, modèles IntersectionObserverToujours — règles non négociables
references/accessibility.mdWCAG 2.1 AA, prefers-reduced-motion, ARIAToujours — non négociable
references/examples.md5 implémentations complètes du monde réelLorsque l'utilisateur a besoin d'un site complet

Déclencheurs Proactifs

Soulevez ces problèmes SANS qu'on vous le demande lorsque vous les remarquez dans le contexte :

  • L'utilisateur télécharge des images produit JPEG → Signalez que les JPEG ne peuvent pas avoir de transparence, proposez d'exécuter l'inspecteur d'actifs
  • Tous les actifs ont la même taille → Signalez un problème de hiérarchie de composition, recommandez un dimensionnement héros + accompagnateur
  • Aucune attribution de profondeur mentionnée → Rappelez que chaque élément a besoin d'un niveau de profondeur (0-5)
  • L'utilisateur demande des "animations fluides" mais aucune gestion du mouvement réduit → Signalez l'exigence d'accessibilité
  • Parallaxe demandée mais aucune optimisation de performance → Signalez les règles will-change et d'accélération GPU
  • Plus de 80 éléments animés → Signalez un problème de performance, recommandez une réduction ou un chargement paresseux

Artefacts de Sortie

Quand vous demandez...Vous obtenez...
"Construis une section héros"Fichier HTML unique avec CSS/JS en ligne, 6 couches de profondeur, audit des actifs, liste de techniques
"Fais-le paraître cinématographique"Timeline de défilement + parallaxe + combinaison d'animations de texte avec configuration GSAP
"Inspecte mes images"Rapport d'audit des actifs avec statut d'arrière-plan, attributions de profondeur, recommandations de redimensionnement
"Effet de scroll à la Apple"Illumination mot par mot + section épinglée + implémentation de zoom perspective
"Corrige les problèmes de performance"Rapport de validation avec checklist d'optimisation GPU et audit will-change

Communication

Toute sortie suit la norme de communication structurée :

  • L'essentiel en premier — montrez l'audit des actifs et le plan de profondeur avant de générer du code
  • Quoi + Pourquoi + Comment — chaque choix de technique expliqué (pourquoi cette animation pour cette ambiance)
  • Les actions ont des propriétaires — "Vous devez fournir des PNG transparents" pas "Les PNG doivent être fournis"
  • Étiquetage de confiance — 🟢 technique vérifiée / 🟡 expérimentale / 🔴 prise en charge limitée du navigateur

Règles Rapides (Non Négociables)

0a. ✅ TOUJOURS exécuter l'inspection des actifs avant de coder — vérifier le format, l'arrière-plan et la taille de chaque image. Énoncer les attributions de profondeur à l'utilisateur avant de construire. 0b. ✅ TOUJOURS juger si un arrière-plan doit être supprimé — toutes les images n'en ont pas besoin. Informer l'utilisateur du statut de chaque actif et obtenir une confirmation avant de traiter un arrière-plan comme un problème. Ne jamais supprimer automatiquement, ne jamais ignorer silencieusement.

  1. ✅ Chaque section a au moins 3 couches de profondeur minimum
  2. ✅ Chaque élément de texte utilise au moins 1 technique d'animation
  3. ✅ Chaque projet inclut le fallback prefers-reduced-motion
  4. ✅ N'animer que les propriétés sécurisées GPU : transform, opacity, filter, clip-path
  5. ✅ Les images de produit sont toujours assignées à profondeur 3 par défaut
  6. ✅ Les images d'arrière-plan sont toujours à profondeur 0 avec un léger flou
  7. ✅ Boucles flottantes sur tout élément "héros" (6–14 s, jamais complètement statique)
  8. ✅ Chaque élément décoratif reçoit aria-hidden="true"
  9. ✅ Le mobile obtient des effets réduits via la détection pointer: coarse
  10. ✅ will-change supprimé une fois les animations terminées

Format de Sortie

Livrez toujours :

  1. Fichier HTML autonome unique (CSS + JS en ligne) sauf si l'utilisateur demande des fichiers séparés
  2. Importations CDN pour GSAP via jsDelivr :

…

[tronqué pour la traduction]

Individual skills in this repo

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

bestagentkits/agency-skills

Generates high-converting landing pages as complete Next.js/React (TSX) components with Tailwind CSS. Creates hero sections, feature grids, pricing tables, FAQ accordions, testimonial blocks, and CTA sections using proven copy frameworks (PAS, AIDA, BAB). Outputs SEO meta tags, structured data, and performance-optimised code targeting Core Web Vitals (LCP < 1s, CLS < 0.1). Use when the user asks to create a landing page, marketing page, homepage, single-page site, lead capture page, campaign page, promo page, or conversion-optimised web page — or when they want to A/B test landing page variants or replace a static page with one designed to convert.

bestagentkits/agency-skills

Generates a premium single-page HTML landing page with 3D CSS animations, GSAP scroll effects, and mouse-parallax depth. Forcing intake (product + elevator pitch, audience register, brand overrides, tone) locks down positioning before any copy or markup is written, so the page reflects the actual product rather than generic boilerplate. Use whenever the user says 'landing for X', 'create a landing page', 'build a landing page', 'make a landing page for X', 'I need a web page for Y', or provides product/service details and wants a polished website. Also triggers on 'promotional page', 'product page', 'one-pager', 'web presence', 'sales page'. Outputs a single self-contained HTML file (Claude Code) or HTML artifact (Claude.ai). Supports configurable brand colors via CSS custom property overrides.

bestagentkits/agency-skills

Frontend development skill for React, Next.js, TypeScript, and Tailwind CSS applications. Use when building React components, optimizing Next.js performance, analyzing bundle sizes, scaffolding frontend projects, implementing accessibility, or reviewing frontend code quality.

Skills associés