Communitygithub.com

curiositech/windags-skills

Techniques de conception web à fort taux de conversion qui impressionnent et persuadent. Couvre la conception de preuves sociales, l'architecture des pages de tarification, l'optimisation des CTA, la persuasion par le défilement, les démos interactives, les signaux de confiance et le savoir-faire visuel derrière les sites qui vendent.

Qu'est-ce que windags-skills ?

Cette compétence spécialisée en conception web pour la vente guide les agents IA (comme Claude Code, Cursor, Codex) pour créer des pages web à fort taux de conversion. Elle ne se concentre pas sur la rédaction ou les tests A/B, mais sur les motifs de conception, les systèmes visuels et les techniques interactives qui transforment les visiteurs en clients. La compétence fournit des plans détaillés pour des sections clés comme le Hero, la barre de logos, la section Problème, l'Agitation, la Solution (avec démonstration interactive), la Preuve sociale approfondie, la Tarification et l'Appel à l'action final. Elle s'appuie sur des exemples concrets de sites performants (Stripe, Linear, Vercel, Notion) et propose des patterns de code (React, CSS) pour implémenter des systèmes comme le défilement révélateur, des grilles de témoignages, des barres de métriques et des CTA optimisés. L'objectif est de créer des pages où le design est invisible — le visiteur ne pense pas « ceci me vend quelque chose », mais « c'est exactement ce qu'il me faut ». Idéale pour auditer des pages existantes ou concevoir de nouvelles landing pages, pages de tarification ou pages de vente long format.

Compatible avec~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/curiositech/windags-skills/tree/HEAD/skills/web-sales-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

windags-skills preview

Documentation

Conception Web pour la Vente

L'art de construire des sites web qui vendent. Pas de stratégie marketing, pas de rédaction, pas d'infrastructure de tests A/B — les motifs de conception réels, les systèmes visuels et les techniques interactives qui transforment les visiteurs en clients.

Principe fondamental : La meilleure conception de vente est invisible. Les visiteurs ne pensent pas « ceci me vend quelque chose ». Ils pensent « c'est exactement ce qu'il me faut ». Chaque pixel, chaque révélation au défilement, chaque placement de preuve sociale renforce la confiance et le désir ou les érode. Il n'y a pas de neutralité.


Quand l'Utiliser

À utiliser pour :

  • Concevoir des pages d'atterrissage qui doivent convertir les visiteurs en inscriptions/achats
  • Créer des pages de tarification avec une architecture de niveaux efficace
  • Placer et concevoir des preuves sociales (témoignages, logos, études de cas)
  • Élaborer des boutons CTA qui sont cliqués (taille, couleur, texte, emplacement)
  • Structurer des pages de vente long format (séquences problème-agitation-solution)
  • Ajouter des signaux de confiance (badges de sécurité, garanties, visages humains)
  • Créer des démos interactives de produits et des visites guidées de fonctionnalités
  • Créer des « moments wow » — révélations déclenchées par le défilement, comparaisons avant/après
  • Auditer des pages existantes pour détecter les faiblesses de conception de conversion

Ne PAS utiliser pour :

  • La rédaction et la stratégie de message → utiliser product-appeal-analyzer ou des compétences de rédaction
  • La mise en œuvre de tests A/B → utiliser frontend-developer
  • La création publicitaire payante → utiliser des compétences marketing
  • Les audits de friction UX → utiliser ux-friction-analyzer (complémentaire — exécutez les deux)
  • La conception web générale → utiliser web-design-expert
  • L'implémentation de paiement/abonnement → utiliser webapp-paywall-implementation

Le Plan de la Page de Vente par Défilement

La page de vente long format moderne suit un arc psychologique. Chaque section a un rôle. Sautez une section et la page perd des visiteurs.

La Structure en 8 Sections

┌─────────────────────────────────────────────┐
│  1. HERO — Promesse + Signal d'Identité      │  ← 0-5 secondes
│     « Ceci est pour les gens comme moi »      │
├─────────────────────────────────────────────┤
│  2. BARRE DE LOGOS — Raccourci de Preuve      │  ← 5-10 secondes
│     « Utilisé par des noms que je connais »   │
├─────────────────────────────────────────────┤
│  3. PROBLÈME — Douleur Reconnue              │  ← 10-30 secondes
│     « Ils comprennent ma situation »         │
├─────────────────────────────────────────────┤
│  4. AGITATION — Conséquences de l'Inaction   │  ← 30-60 secondes
│     « C'est pire que je ne pensais »          │
├─────────────────────────────────────────────┤
│  5. SOLUTION — Produit comme Résolution       │  ← 1-2 minutes
│     « Voici comment ça marche + démo »        │
├─────────────────────────────────────────────┤
│  6. PREUVE — Preuve Sociale Approfondie      │  ← 2-3 minutes
│     « De vraies personnes, de vrais résultats »│
├─────────────────────────────────────────────┤
│  7. TARIFICATION — Architecture de l'Offre    │  ← 3-4 minutes
│     « Valeur claire, choix évident »          │
├─────────────────────────────────────────────┤
│  8. CTA FINAL — Urgence + Garantie            │  ← Point de décision
│     « Sans risque, agissez maintenant »      │
└─────────────────────────────────────────────┘

Implémentation Section par Section

Section 1 : Hero (Le Verdict en 5 Secondes)

Le Hero décide si les visiteurs restent ou partent. Chaque élément doit gagner son pixel.

Motif de mise en page — le Hero convergent :

function HeroSection() {
  return (
    <section className="hero">
      {/* Accroche — crédibilité murmurée */}
      <p className="hero-eyebrow">Utilisé par plus de 2 400 équipes d'ingénierie</p>

      {/* Titre principal — une promesse, axée sur les avantages */}
      <h1 className="hero-headline">
        Livrez des fonctionnalités en heures,<br />pas en sprints
      </h1>

      {/* Sous-titre — comment, en une phrase */}
      <p className="hero-subheadline">
        L'automatisation des flux de travail par IA qui transforme votre backlog
        en code déployé — relu, testé et prêt.
      </p>

      {/* Groupe de CTA — principal + secondaire à faible engagement */}
      <div className="hero-cta-cluster">
        <a href="/inscription" className="cta-primary">
          Commencer à construire gratuitement
        </a>
        <a href="/demo" className="cta-secondary">
          Voir la démo de 2 min
        </a>
      </div>

      {/* Preuve visuelle — produit en action, pas une capture d'écran */}
      <div className="hero-visual">
        <video autoPlay muted loop playsInline>
          <source src="/extrait-demo.mp4" type="video/mp4" />
        </video>
      </div>
    </section>
  );
}
.hero {
  padding: 5rem 2rem 4rem;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}

.hero-eyebrow {
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-primary);
  margin-bottom: 1rem;
}

.hero-headline {
  font-size: clamp(2.25rem, 5vw, 3.75rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  margin-bottom: 1.25rem;
}

.hero-subheadline {
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  line-height: 1.6;
  color: var(--color-text-secondary);
  max-width: 600px;
  margin: 0 auto 2rem;
}

.hero-cta-cluster {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 3rem;
}

Ce que les meilleurs font différemment (Stripe, Linear, Vercel, Notion) :

  • Stripe : Arrière-plans animés avec dégradés qui semblent vivants, pas décoratifs. La capacité du produit est révélée par des micro-interactions — vous faites défiler et le produit se démontre lui-même.
  • Linear : Mode sombre qui signale « outil puissant pour les constructeurs sérieux ». Zéro déchet visuel. Le design EST la promesse du produit — rapidité et précision.
  • Vercel : Hero centré sur la typographie avec une ligne qui encadre l'ensemble du produit. Le CTA est « Commencer le déploiement » pas « S'inscrire » — orienté action.
  • Notion : Montre le produit en fonctionnement, pas une capture d'écran. Le Hero EST une mini-démo.

Section 2 : Barre de Logos (Le Raccourci de Confiance)

4 à 6 logos reconnaissables. Pas 20. La quantité dilue ; la qualité valide.

function LogoBar() {
  return (
    <section className="logo-bar">
      <p className="logo-bar-label">
        Utilisé par les équipes de
      </p>
      <div className="logo-bar-logos">
        {logos.map(logo => (
          <img
            key={logo.name}
            src={logo.src}
            alt={logo.name}
            className="logo-bar-logo"
          />
        ))}
      </div>
    </section>
  );
}
.logo-bar {
  padding: 2rem 2rem;
  text-align: center;
  border-top: 1px solid var(--color-border-subtle);
  border-bottom: 1px solid var(--color-border-subtle);
}

.logo-bar-label {
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-tertiary);
  margin-bottom: 1.25rem;
}

.logo-bar-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
  flex-wrap: wrap;
}

.logo-bar-logo {
  height: 28px;
  opacity: 0.5;
  filter: grayscale(1);
  transition: opacity 0.2s, filter 0.2s;
}

.logo-bar-logo:hover {
  opacity: 1;
  filter: grayscale(0);
}

Règles de conception :

  • Logos en niveaux de gris par défaut (moins de bruit visuel, paradoxalement plus de crédibilité)
  • Tous les logos à la même hauteur visuelle (28-32px) quelle que soit leur proportion d'origine
  • 5 logos est le point idéal — moins semble clairsemé, plus semble encombré
  • Étiquette au-dessus (« Utilisé par », « Utilisé par les équipes de ») pas en dessous
  • Si vous n'avez pas de logos reconnaissables, utilisez des métriques à la place : « 2 400+ équipes », « 10M+ déploiements »

Section 3 : Problème (Douleur Reconnue)

Le visiteur doit se sentir vu. Cette section valide sa lutte.

Motif : La grille des trois douleurs

function ProblemSection() {
  return (
    <section className="problem-section">
      <h2 className="section-eyebrow">Ça vous parle ?</h2>
      <div className="pain-grid">
        <PainCard
          icon={<ClockIcon />}
          title="Des semaines perdues dans les cycles de relecture"
          description="Les PR restent en attente pendant des jours. Le contexte est perdu. Les ingénieurs changent de contexte entre les fonctionnalités en attendant les approbations."
        />
        <PainCard
          icon={<AlertTriangleIcon />}
          title="Les bugs passent quand même"
          description="La relecture manuelle attrape les problèmes de style, pas les bugs logiques. Les choses qui cassent la production cassent toujours la production."
        />
        <PainCard
          icon={<TrendingDownIcon />}
          title="La vélocité de livraison stagne"
          description="Plus d'ingénieurs, même résultat. Les frais généraux de processus augmentent plus vite que l'équipe."
        />
      </div>
    </section>
  );
}

Règles de conception :

  • Utilisez les mots du visiteur, pas le jargon de votre produit
  • 3 points de douleur maximum (plus dilue l'impact)
  • Les icônes doivent renforcer l'émotion, pas décorer
  • La section doit faire hocher la tête aux visiteurs, pas les faire tressaillir — empathie, pas peur

Section 4 : Agitation (Le Coût de l'Inaction)

Cette section monte les enjeux. Pas avec la peur — avec la clarté sur ce que le problème coûte réellement.

Motif : La cascade de conséquences

Montrez des conséquences croissantes : temps perdu, argent perdu, opportunité manquée, moral de l'équipe érodé. Utilisez des chiffres réels quand c'est possible (« L'équipe moyenne perd 14 heures/semaine en frais généraux de relecture de code »).

Approche de conception : Fond plus sombre, typographie légèrement plus serrée, compteur animé optionnel montrant le gaspillage qui s'accumule. Cette section est visuellement « plus lourde » que la section Problème — c'est le point bas avant l'arrivée de la solution.

Section 5 : Solution (Produit comme Résolution)

Le pivot émotionnel. La page passe du problème à la possibilité.

Motif : Vitrine de fonctionnalités avec révélations déclenchées par le défilement

function SolutionSection() {
  return (
    <section className="solution-section">
      <h2>Voici comment ça marche</h2>
      <div className="feature-showcase">
        {features.map((feature, i) => (
          <FeatureRow
            key={feature.id}
            reverse={i % 2 === 1}  /* mise en page alternée */
            title={feature.title}
            description={feature.description}
            visual={feature.visual}  /* vidéo, animation ou interactif */
          />
        ))}
      </div>
    </section>
  );
}

function FeatureRow({ reverse, title, description, visual }) {
  const ref = useRef(null);
  const isVisible = useIntersectionObserver(ref, { threshold: 0.3 });

  return (
    <div
      ref={ref}
      className={`feature-row ${reverse ? 'reverse' : ''}`}
      style={{
        opacity: isVisible ? 1 : 0,
        transform: isVisible ? 'translateY(0)' : 'translateY(2rem)',
        transition: 'opacity 0.6s ease, transform 0.6s ease',
      }}
    >
      <div className="feature-text">
        <h3>{title}</h3>
        <p>{description}</p>
      </div>
      <div className="feature-visual">
        {visual}
      </div>
    </div>
  );
}
.feature-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  padding: 4rem 0;
}

.feature-row.reverse {
  direction: rtl;
}

.feature-row.reverse > * {
  direction: ltr;
}

.feature-text h3 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

.feature-text p {
  font-size: 1.125rem;
  line-height: 1.7;
  color: var(--color-text-secondary);
}

@media (max-width: 768px) {
  .feature-row {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .feature-row.reverse {
    direction: ltr;
  }
}

Ce qui fait vendre :

  • La mise en page alternée évite la monotonie du défilement
  • Les visuels sont interactifs ou animés — pas des images statiques
  • Chaque fonctionnalité est présentée comme un avantage (« Livrez 3 fois plus vite ») pas comme une capacité (« CI/CD automatisé »)
  • Les révélations déclenchées par le défilement créent des moments de découverte — la page « se dévoile » pendant qu'ils lisent
  • 3 à 5 fonctionnalités maximum. Plus que cela, vous listez, vous ne vendez pas.

Section 6 : Preuve (Preuve Sociale Approfondie)

Témoignages, études de cas, métriques. C'est là que le scepticisme meurt.

function ProofSection() {
  return (
    <section className="proof-section">
      <h2>Les équipes livrent plus vite avec nous</h2>

      {/* Barre de métriques — chiffres concrets */}
      <div className="metrics-bar">
        <Metric value="73%" label="cycles de relecture plus rapides" />
        <Metric value="2,4x" label="plus de déploiements par semaine" />
        <Metric value="89%" label="moins de bugs en production" />
      </div>

      {/* Témoignage vedette — une citation puissante avec un visage */}
      <blockquote className="featured-testimonial">
        <img src="/temoignages/sarah.jpg" alt="Sarah Chen" />
        <div>
          <p className="quote">
            « Nous sommes passés d'un déploiement par mois à un déploiement quotidien.
            L'équipe apprécie vraiment le processus de relecture maintenant. »
          </p>
          <cite>
            <strong>Sarah Chen</strong>
            <span>VP Ingénierie, Acme Corp</span>
          </cite>
        </div>
      </blockquote>

      {/* Grille de témoignages — largeur de la preuve */}
      <div className="testimonial-grid">
        {testimonials.map(t => (
          <TestimonialCard key={t.id} {...t} />
        ))}
      </div>
    </section>
  );
}
.metrics-bar {
  display: flex;
  justify-content: center;
  gap: 4rem;
  padding: 3rem 0;
}

.metric-value {
  font-size: 3rem;
  font-weight: 800;
  color: var(--color-primary);
  line-height: 1;
}

.metric-label {
  font-size: 0.9375rem;
  color: var(--color-text-secondary);
  margin-top: 0.5rem;
}

.featured-testimonial {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
  padding: 2.5rem;
  background: var(--color-surface-elevated);
  border-radius: 1rem;
  border: 1px solid var(--color-border-subtle);
  margin: 3rem 0;
}

.featured-testimonial img {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.featured-testimonial .quote {
  font-size: 1.25rem;
  line-height: 1.6;
  font-style: italic;
  margin-bottom: 1rem;
}

.testimonial-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
}

Hiérarchie de la preuve sociale (du plus fort au plus faible) :

  1. Personne nommée + photo + entreprise + rôle + résultat spécifique (« Sarah Chen, VP Ingénierie chez Acme Corp : cycles de relecture 73 % plus rapides »)
  2. Témoignage nommé + fonction (« Marc D., CTO »)
  3. Logo de l'entreprise (pas de personne, mais une marque reconnaissable)
  4. Métriques agrégées (« 2 400+ équipes »)
  5. Moyenne d'évaluation par étoiles (« ★★★★☆ (4.8/5) »)
  6. Témoignage générique (« Un client a dit... »)

Section 7 : Tarification (L'Architecture de l'Offre)

La page de tarification n'est pas une liste de prix. C'est un argumentaire de vente. La grille de niveaux est la chose la plus persuasive de la page.

Motif : Contraste centre-extrémité

function PricingSection() {
  return (
    <section className="pricing-section">
      <h2>Un prix simple pour une puissance illimitée</h2>
      <p className="pricing-subtitle">
        Pas de frais cachés. Pas de surprises. Passez à un niveau supérieur quand vous êtes prêt.
      </p>
      <div className="pricing-grid">
        <PricingCard
          name="Starter"
          price="0"
          description="Pour essayer le produit"
          features={[
            "Jusqu'à 3 membres",
            "500 actions/mois",
            "Modèles de flux de travail de base",
            "Assistance par e-mail"
          ]}
          cta="Commencer gratuitement"
        />
        <PricingCard
          name="Pro"
          price="29"
          description="Pour les équipes qui expédient"
          features={[
            "Membres illimités",
            "Actions illimitées",
            "Flux de travail IA avancés",
            "Intégrations prioritaires",
            "Assistance prioritaire"
          ]}
          highlighted={true}
          cta="Commencer l'essai gratuit"
        />
        <PricingCard
          name="Entreprise"
          price="Personnalisé"
          description="Pour les organisations à grande échelle"
          features={[
            "Tout du niveau Pro",
            "Déploiement sur site",
            "SSO et conformité",
            "Gestionnaire de compte dédié",
            "Création de flux personnalisée"
          ]}
          cta="Contacter les ventes"
        />
      </div>
    </section>
  );
}

function PricingCard({ name, price, description, features, highlighted, cta }) {
  return (
    <div className={`pricing-card ${highlighted ? 'highlighted' : ''}`}>
      {highlighted && <span className="pricing-badge">Le plus populaire</span>}
      <h3 className="pricing-name">{name}</h3>
      <p className="pricing-price">
        <span className="currency">€</span>{price}
        {price !== "Personnalisé" && <span className="period">/mois</span>}
      </p>
      <p className="pricing-description">{description}</p>
      <ul className="pricing-features">
        {features.map(f => <li key={f}>{f}</li>)}
      </ul>
      <a href="/inscription" className={`cta-${highlighted ? 'primary' : 'secondary'}`}>
        {cta}
      </a>
    </div>
  );
}
.pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  max-width: 1000px;
  margin: 0 auto;
}

.pricing-card {
  padding: 2rem;
  border-radius: 1rem;
  border: 1px solid var(--color-border-subtle);
  background: var(--color-surface);
  display: flex;
  flex-direction: column;
  transition: transform 0.2s, box-shadow 0.2s;
}

.pricing-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.08);
}

.pricing-card.highlighted {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 2px var(--color-primary);
  position: relative;
}

.pricing-badge {
  position: absolute;
  top: -0.75rem;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-primary);
  color: white;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.25rem 1rem;
  border-radius: 999px;
}

.pricing-name {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.pricing-price {
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 0.5rem;
}

.currency {
  font-size: 1.5rem;
  vertical-align: super;
  margin-right: 0.125rem;
}

.period {
  font-size: 1rem;
  font-weight: 400;
  color: var(--color-text-tertiary);
}

.pricing-description {
  color: var(--color-text-secondary);
  margin-bottom: 1.5rem;
}

.pricing-features {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
  flex-grow: 1;
}

.pricing-features li {
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--color-border-subtle);
  font-size: 0.9375rem;
}

.pricing-features li:last-child {
  border-bottom: none;
}

Règles de tarification :

  • L'effet leurre : Trois niveaux. Le niveau intermédiaire est celui que vous voulez qu'ils achètent. Le niveau supérieur le fait paraître abordable. Le niveau inférieur est volontairement sous-fonctionnalisé.
  • Ancrage : Montrez le prix le plus élevé en premier si l'utilisateur fait défiler horizontalement. Tout semble moins cher en comparaison.
  • Prix annuel vs mensuel : Basculez avec « Économisez 20 % » mis en évidence. Le prix annuel est le choix par défaut.
  • Le niveau Pro doit « gagner » : Effet de surbrillance (bordure, ombre, badge « Le plus populaire »). Pas un simple changement de couleur — il doit visuellement dominer.
  • Chiffres ronds : 29 €/mois pas 27,50 €. Les prix ronds sont plus faciles à traiter cognitivement.
  • Comparaison des fonctionnalités : Si les niveaux sont complexes, ajoutez une ligne « Ce qui est inclus » au-dessus des fonctionnalités pour cadrer chaque niveau comme une valeur, pas une limitation.

Section 8 : CTA Final (Dernière Chance de Convertir)

Le moment de vérité. Tout ce qui a précédé mène à ce bouton.

Motif : La zone d'atterrissage finale

function FinalCTA() {
  return (
    <section className="final-cta">
      <h2>Prêt à transformer votre flux de travail ?</h2>
      <p className="final-cta-subtitle">
        Rejoignez plus de 2 400 équipes qui livrent plus vite avec une meilleure qualité.
      </p>
      <div className="final-cta-cluster">
        <a href="/inscription" className="cta-primary cta-large">
          Commencer votre essai gratuit
        </a>
      </div>
      <div className="final-trust-signals">
        <span>🔒 Aucune carte de crédit requise</span>
        <span>⏱ Configuration en 2 minutes</span>
        <span>✅ Annulation à tout moment</span>
      </div>
    </section>
  );
}
.final-cta {
  text-align: center;
  padding: 6rem 2rem;
  background: linear-gradient(to bottom, var(--color-surface), var(--color-background));
}

.final-cta h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  margin-bottom: 1rem;
}

.final-cta-subtitle {
  font-size: 1.25rem;
  color: var(--color-text-secondary);
  max-width: 500px;
  margin: 0 auto 2.5rem;
}

.cta-large {
  font-size: 1.25rem;
  padding: 1rem 2.5rem;
}

.final-trust-signals {
  display: flex;
  gap: 2rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 2rem;
  font-size: 0.9375rem;
  color: var(--color-text-tertiary);
}

Éléments critiques du CTA final :

  1. Répétez la promesse : Le titre reconnecte à la promesse initiale du Hero
  2. Renforcez la preuve sociale : Rappelez-leur les chiffres (« 2 400+ équipes »)
  3. Le CTA doit être le bouton le plus important de la page : Texte plus grand, padding plus grand, couleur plus audacieuse
  4. Signaux de confiance : Aucune carte de crédit, annulation à tout moment, essai gratuit — placez-les juste en dessous du bouton, pas en petits caractères en bas
  5. Garantie de remboursement : Si vous en avez une, c'est là qu'il faut la mettre. « Essayez sans risque pendant 30 jours. »

Techniques Avancées

Persuasion par le Défilement

Les révélations au défilement (scroll reveals, parallaxe, défis) ne sont pas décoratives — elles créent des mini-moments de « découverte ». Chaque fois que quelque chose apparaît ou change quand l'utilisateur fait défiler, cela libère une micro-dose de dopamine. Le visiteur devient un explorateur, pas un observateur passif.

Implémentation :

  • Seuil : 0,3 (l'élément est à 30% visible) — suffisamment tôt pour que la transition semble naturelle, pas précipitée
  • Rotation : transform: translateY(2rem) avec assouplissement — simple, efficace, pas de cinématique
  • Ne pas révéler plus d'un élément à la fois — le groupement réduit l'impact individuel de chaque révélation

Architecture des CTA

Le bouton n'est jamais juste un bouton. C'est l'aboutissement de tout ce qui précède.

Règles :

  • Contraste : Le CTA principal doit avoir le rapport de contraste le plus élevé de la page. La couleur d'arrière-plan du bouton doit être la couleur la plus saturée visible.
  • Taille : Au moins 48px de hauteur. Un bouton plus grand signale une action plus importante.
  • Texte orienté action : « Commencer l'essai gratuit » > « S'inscrire ». « Déployer maintenant » > « Soumettre ».
  • Un seul CTA principal par vue : Plusieurs boutons principaux diluent l'action. Le secondaire doit être visuellement subordonné (contour, opacité réduite).
  • Espace autour : Le CTA doit avoir de l'espace. Pas d'éléments concurrents dans un rayon de 50 px.
  • Placer en bas du panier : Le CTA doit être tout en bas du composant, après que l'utilisateur a vu toute la valeur.

Architecture des Pages de Tarification

Le plan en 4 étapes :

  1. Étiquette de section : « Une tarification simple et directe » — donne le ton de la transparence
  2. Sous-titre : Une phrase qui répond à « pourquoi devrais-je payer pour ça ? »
  3. Ancrage : Affichez le prix annuel en premier, avec « Économisez X% »
  4. Niveaux : Commencez par une option gratuite ou à faible coût, placez l'offre premium au milieu, terminez avec l'option « Entreprise » coûteuse qui rend le niveau intermédiaire abordable

Anti-motifs à éviter :

  • Texte de prix gris clair ou de petite taille (semble cher)
  • « Contactez-nous » comme seul CTA (augmente la friction)
  • Plus de 4 niveaux (paralysie par surcharge de choix)
  • Niveaux verticaux sans comparaison côte à côte (l'utilisateur doit faire défiler pour comparer)
  • Polices décoratives (semble peu professionnel pour les transactions)

Checklist de Conception de Vente

  • Le Hero fait une promesse unique et claire en moins de 5 secondes
  • Les logos sont en niveaux de gris, espacés et à hauteur égale
  • La section Problème utilise les mots du visiteur, pas le jargon du produit
  • La section Agitation montre des conséquences chiffrées quand c'est possible
  • Les fonctionnalités sont présentées comme des avantages (résultat) pas des capacités (intrant)
  • Les démos sont interactives ou vidéo — pas de captures d'écran statiques
  • La preuve sociale inclut des témoignages nommés avec visages et résultats
  • Les témoignages incluent une photo, un nom, un rôle et une entreprise
  • Les métriques sont spécifiques et crédibles (« 73% » pas « la plupart »)
  • La page de tarification utilise l'effet leurre avec un niveau mis en évidence
  • Le niveau Pro est visuellement dominant (bordure, ombre, badge)
  • La tarification est annuelle par défaut, avec un basculement mensuel disponible
  • Le CTA final répète la promesse et comprend des signaux de confiance
  • Tous les CTA principaux sont orientés action et uniques par vue
  • Les révélations au défilement sont synchronisées — pas plus d'une à la fois
  • La page a une seule action principale par vue
  • Le design est réactif — la mise en page alterne sur mobile
  • Les polices de caractères sont professionnelles et très lisibles (Inter, SF Pro, system-ui)
  • Aucune image d'archive — tout le visuel soutient la promesse du produit

Références et Inspirations

Étudier ces pages dans l'ordre :

  1. Stripe (stripe.com/pricing) — Architecture de tarification parfaite. La grille de niveaux est un instrument de vente.
  2. Linear (linear.app) — Hero qui EST le produit. Zéro bruit. Chaque pixel vend de la vitesse.
  3. Vercel (vercel.com) — Typographie et CTA qui cadrent tout le produit en une ligne.
  4. Notion (notion.so/product) — Démonstration produit comme Hero. Le design enseigne pendant qu'il vend.
  5. Apple (apple.com/iphone) — Révélations au défilement comme narration de produit. Le standard de la persuasion par le défilement.

Pourquoi celles-ci plutôt que d'autres :

  • Ce ne sont pas des sites « de vente » au sens traditionnel (pas de popups agressifs, pas de compteurs de rareté)
  • Ce sont des sites qui vendent des outils complexes à des publics techniques — exactement ce que ce modèle doit faire
  • Leur design EST leur avantage concurrentiel. Vous ne pouvez pas copier leur code, mais vous pouvez copier leurs motifs

Notes Finales

Cette compétence concerne les motifs visuels et interactifs qui transforment les visiteurs en clients. Utilisez-la avec product-appeal-analyzer pour la stratégie de message, ux-friction-analyzer pour la fluidité du parcours utilisateur, et web-design-expert pour la conception web générale.

La meilleure vente ne ressemble pas à de la vente. Elle ressemble à de l'aide. Chaque section, chaque pixel, chaque transition — ils ont un seul travail : faire dire au visiteur « Oui, c'est exactement ce dont j'ai besoin. »

Individual skills in this repo

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

curiositech/windags-skills

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

curiositech/windags-skills

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

curiositech/windags-skills

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

curiositech/windags-skills

Implement WCAG 2.2 AA/AAA compliance with automated testing, keyboard navigation, screen reader support, and focus management. Activate on: accessibility audit, WCAG compliance, keyboard navigation, screen reader, aria attributes, axe-core, focus trap. NOT for: design-level accessibility review (use design-accessibility-auditor), color contrast only (use css-in-js-architect).

curiositech/windags-skills

Time-blind friendly planning, executive function support, and daily structure for ADHD brains. Specializes in realistic time estimation, dopamine-aware task design, and building systems that actually work for neurodivergent minds.

curiositech/windags-skills

Designs digital experiences for ADHD brains using neuroscience research and UX principles. Expert in reducing cognitive load, time blindness solutions, dopamine-driven engagement, and compassionate design patterns. Activate on 'ADHD design', 'cognitive load', 'accessibility', 'neurodivergent UX', 'time blindness', 'dopamine-driven', 'executive function'. NOT for general accessibility (WCAG only), neurotypical UX design, or simple UI styling without ADHD context.

curiositech/windags-skills

>- Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

curiositech/windags-skills

Extend and modify the admin dashboard, developer portal, and operations console. Use when adding new admin tabs, metrics, monitoring features, or internal tools. Activates for dashboard development, analytics, user management, and internal tooling.

curiositech/windags-skills

Conversation patterns and interaction protocols for multi-agent systems. Covers request/response, pub/sub, blackboard, delegation chains, debate, critique, consensus, fan-out/fan-in, supervisor-worker, and peer negotiation. Deep analysis of AutoGen conversation patterns, CrewAI delegation, LangGraph state passing, and FIPA-ACL performatives. Teaches how to design what agents say to each other and in what order. Activate on: "agent conversation", "agent protocol", "multi-agent debate", "agent delegation", "supervisor worker pattern", "agent voting", "consensus protocol", "fan-out fan-in", "agent negotiation", "blackboard pattern", "agent dialogue", "conversation topology", "agent handoff". NOT for: wire format or serialization (use agent-interchange-formats), orchestration infrastructure (use agentic-infrastructure-2026), single agent behavior (use agentic-patterns).

curiositech/windags-skills

Meta-agent for creating new custom agents, skills, and MCP integrations. Expert in agent design, MCP development, skill architecture, and rapid prototyping. Activate on 'create agent', 'new skill', 'MCP server', 'custom tool', 'agent design'. NOT for using existing agents (invoke them directly), general coding (use language-specific skills), or infrastructure setup (use deployment-engineer).

curiositech/windags-skills

AI-powered calendar management and agent-based scheduling coordination. Covers calendar APIs (Google Calendar, CalDAV/iCal), AI scheduling assistants (Reclaim, Clockwise, Motion, Cal.com), building custom calendar agents with MCP, multi-calendar merging, timezone management, focus block protection, meeting fatigue detection, and agent-to-agent meeting negotiation protocols. Activate on: "calendar agent", "AI scheduling", "calendar coordination", "meeting scheduling", "calendar API", "focus time protection", "calendar optimization", "Google Calendar MCP", "Reclaim", "Clockwise", "Motion", "Cal.com", "smart scheduling", "calendar-aware agent", "timezone scheduling", "agent negotiation meetings". NOT for: manual calendar UI component design (use form-validation-architect), project management scheduling or Gantt charts (use project-management-guru-adhd), general time-tracking or pomodoro apps (use adhd-daily-planner for time-awareness), building the agent itself from scratch (use agent-creator).

curiositech/windags-skills

Build and adopt production AI agent infrastructure in 2026. Covers framework selection (LangGraph, CrewAI, AutoGen, MCP), orchestration patterns, evaluation, observability, memory systems, and tool use. Also covers the SOCIAL dimension: how to sell agent infrastructure internally, change management, measuring ROI, building trust in autonomous systems, and scaling adoption across teams. Activate on: "agent infrastructure", "agent framework comparison", "which agent framework", "sell AI tools internally", "agent adoption", "agent observability", "agent evaluation", "MCP architecture", "agentic mesh", "enterprise AI agents", "AI change management", "agent ROI". NOT for: building specific agents (use ai-engineer), designing agent behavior patterns (use agentic-patterns), prompt tuning (use prompt-engineer).

curiositech/windags-skills

Fundamental patterns for effective agentic behavior. Teaches decomposition, tool orchestration, error recovery, context management, quality self-assessment, and knowing when to stop. Model-agnostic principles that make any agent more effective regardless of domain. Activate on: "how should I structure this agent", "agentic workflow", "agent patterns", "multi-step task", "tool orchestration", "/agentic-patterns", "decompose this", "agent best practices", "chain of actions", "when should the agent stop", "agent loop design". NOT for: creating agent infrastructure (use agent-creator), building DAGs (use windags-architect), specific tool implementation.

curiositech/windags-skills

Automated discovery and matching of agent skills for dynamic task routing and capability assessment

curiositech/windags-skills

Cryptographic security for agentic systems — zero-trust agent networking, signed message envelopes (JWS/JWE), capability-based security (ocaps), Merkle tree audit trails, WASM sandboxing, and formal verification. Covers CLI dev tool security, mTLS between agents, permission boundaries (least privilege for AI agents), and supply chain security for skills/plugins. Activate on: "agent security", "zero trust agents", "secure agent communication", "capability-based security", "ocap", "signed messages between agents", "agent audit trail", "sandbox agent execution", "agent permissions", "mTLS agents", "cryptographic verification", "agent supply chain", "OWASP agentic", "prove agent did X", "tamper-proof agent logs". NOT for: application-level SAST scanning (use security-auditor), network firewall rules (use infrastructure), SOC2/HIPAA compliance (organizational), or prompt injection defense (use prompt-engineer).

curiositech/windags-skills

Data structures and serialization formats for agent-to-agent communication. Covers message envelopes, structured output schemas, capability declarations, task handoff payloads, error/retry signaling, and context windows as data structures. Deep comparison of A2A protocol, MCP, OpenAI function calling, and LangChain message types. Teaches when to use rigid schemas vs free-form with validation, typed vs untyped, streaming vs batch. Activate on: "agent message format", "agent communication schema", "agent-to-agent protocol", "A2A protocol", "MCP message format", "structured output for agents", "agent interop", "interchange format", "agent serialization", "task handoff format", "capability declaration". NOT for: what agents say to each other (use agent-conversation-protocols), orchestration topology (use multi-agent-coordination), building agent infrastructure (use agentic-infrastructure-2026).

curiositech/windags-skills

Logic-based agent programming language implementing BDI architecture for practical autonomous agent development

curiositech/windags-skills

>- Design AgentSpeak(L)-style BDI agents with context-guarded plans, selection functions, and intention stacks. Use for interruptible autonomy, agent policy, and multi-agent orchestration in dynamic environments. NOT for simple rule engines, static planners, or centralized workflows.

curiositech/windags-skills

Foundational concurrent computation model where actors communicate exclusively through asynchronous message passing

curiositech/windags-skills

license: Apache-2.0 NOT for unrelated tasks outside this domain.

Skills associés