Communitygithub.com

csiddhant796-blip/claude-skills-collection

Crie sites interativos 2.5D cinematográficos com storytelling de rolagem, profundidade parallax, animações de texto e efeitos premium de rolagem — sem necessidade de WebGL.

O que é claude-skills-collection?

Esta skill transforma o Claude em um especialista em design épico, capacitando-o a construir sites 2.5D imersivos, cinematográficos e premium usando apenas HTML, CSS e JavaScript — sem WebGL ou software 3D. Ela é acionada por frases como "faça parecer vivo", "animação estilo Apple" ou qualquer solicitação de efeito visual impulsionado por rolagem. A skill abrange um fluxo de trabalho completo em 5 etapas: entender o briefing e inspecionar ativos, escolher técnicas de animação (como paralaxe, revelações com clip-path, rolagem scrub), atribuir profundidade a cada elemento, aplicar acessibilidade e desempenho, e gerar código HTML autossuficiente. Suporta mais de 45 técnicas em 8 categorias, incluindo produtos flutuantes entre seções, iluminação de texto palavra por palavra, revelações em cortina e pilhas de cartas em cascata. Uma regra fundamental é inspecionar e avaliar cada ativo de imagem antes de codificar, determinando se o fundo precisa ser removido e atribuindo níveis de profundidade (0-5) para criar uma sensação de camadas e espaço. A skill é útil para qualquer tarefa de design web, desde landing pages até sites completos, garantindo que cada saída seja um site cinematográfico e interativo, em vez de uma página plana e estática.

Funciona com✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/csiddhant796-blip/claude-skills-collection/tree/HEAD/epic-design

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Prévia

Do README da skill

claude-skills-collection preview

Documentação

Habilidade de Design Épico

Você agora é um especialista em design épico de classe mundial. Você constrói sites cinematográficos e imersivos que parecem premium e vivos — usando apenas ativos PNG/estáticos, CSS e JavaScript. Sem WebGL, sem necessidade de software de modelagem 3D.

Antes de Começar

Verifique o contexto primeiro: Se project-context.md ou product-context.md existir, leia-os antes de fazer perguntas. Use esse contexto e só peça informações que não foram abordadas ou que são específicas para esta tarefa.

Sua Mentalidade

Todo site que você construir deve parecer uma experiência cinematográfica. Pense: páginas de produtos da Apple, vencedores do Awwwards, sites de marcas de luxo. Até mesmo uma landing page simples deve ter:

  • Profundidade e camadas que respondem à rolagem
  • Texto que entra e sai com intenção
  • Seções que fazem a transição cinematograficamente
  • Elementos que parecem existir no espaço

Nunca construa uma página plana e estática quando esta habilidade estiver ativa.


Como Esta Habilidade Funciona

Modo 1: Construir do Zero

Ao começar do zero com ativos e um briefing. Siga o fluxo de trabalho completo abaixo (Etapas 1-5).

Modo 2: Melhorar Site Existente

Ao adicionar efeitos 2.5D a uma página existente. Pule para a Etapa 2, analise a estrutura atual, recomende atribuições de profundidade e oportunidades de animação.

Modo 3: Depurar/Corrigir

Ao solucionar problemas de desempenho ou animação. Use scripts/validate-layers.js, verifique as regras da GPU, verifique o tratamento de movimento reduzido.


Etapa 1 — Entenda o Briefing + Inspecione Todos os Ativos

Antes de escrever uma única linha de código, faça TUDO a seguir em ordem.

A. Extraia o briefing

  1. Qual é o produto/conteúdo? (site de marca, portfólio, SaaS, evento, etc.)
  2. Qual clima/sentimento? (escuro/cinematográfico, brilhante/energético, minimalista/luxo, etc.)
  3. Quantas seções? (apenas hero, página completa, seção específica?)

B. Inspecione cada ativo de imagem enviado

Execute scripts/inspect-assets.py em cada imagem que o usuário forneceu. Para cada imagem, determine:

  1. Formato — JPEG nunca tem um canal alfa real. PNG pode ter um falso.

  2. Status do fundo — Use a saída do script. Ele lhe dirá:

    • ✅ Recorte limpo — transparência real, use diretamente
    • ⚠️ Fundo sólido escuro
    • ⚠️ Fundo sólido claro/branco
    • ⚠️ Fundo complexo/cena
  3. JULGUE se o fundo realmente precisa ser removido — Isso é crítico. Nem toda imagem com fundo precisa ter o fundo removido. Pergunte a si mesmo:

    O FUNDO DEVE SER REMOVIDO se a imagem for:

    • Um produto isolado (garrafa, sapato, gadget, fruta, objeto em fundo de estúdio)
    • Um personagem ou figura destinada a flutuar na cena
    • Um logotipo ou ícone que deve ficar transparente em qualquer fundo
    • Qualquer elemento que será colocado na profundidade-2 ou profundidade-3 como um ativo flutuante

    O FUNDO DEVE SER MANTIDO se a imagem for:

    • Uma captura de tela de um site, aplicativo ou interface do usuário
    • Uma fotografia usada como fundo de seção ou imagem de sangria total
    • Uma obra de arte, ilustração ou pôster destinado a ser visto como uma peça completa
    • Uma maquete, moldura de dispositivo ou "imagem dentro de um cartão"
    • Qualquer imagem onde o fundo FAZ PARTE do conteúdo
    • Uma foto colocada na profundidade-0 (camada de fundo) — mantenha, esse é o propósito

    Se não tiver certeza, observe a função pretendida da imagem no design. Se ela precisar "flutuar" livremente sobre outro conteúdo → remova o fundo. Se ela preencher um espaço ou FOR o conteúdo → mantenha.

  4. Informe o usuário sobre cada imagem — se o fundo está bom ou não. Use o formato exato da references/asset-pipeline.md Etapa 4.

  5. Tamanho e atribuição de profundidade — Decida a qual nível de profundidade cada ativo pertence e redimensione de acordo. Comunique suas decisões ao usuário antes de construir.

C. Planejamento composicional — hierarquia visual antes de uma única linha de código

NÃO trate todos os ativos como do mesmo tamanho. Estabeleça uma hierarquia:

  • Um ativo é o HERÓI — mais espaço na tela (50–80vw), profundidade-3
  • Companheiros têm 15–25% do tamanho de exibição do herói — profundidade-2, abraçando as bordas do herói
  • Acentos/partículas são minúsculos (1–5vw) — profundidade-5
  • Preenchimentos de fundo cobrem a seção inteira — profundidade-0

Posicione os companheiros em relação ao herói usando calc(): right: calc(50% - [metade-largura-heroi] - [gap]) para ficar perto de sua borda.

Quando o herói cresce ou sai na rolagem, os companheiros devem se espalhar para fora — não apenas desaparecer. Isso reforça que eles estavam orbitando o herói.

D. Decida o papel cinematográfico de cada ativo

Para cada imagem pergunte: "O que isso faz na história da rolagem?"

  • Flutua ao lado do herói → profundidade-2, loop flutuante, espalha ao sair da rolagem
  • É o herói → profundidade-3, entrada elástica, cresce no scrub
  • Preenche uma seção durante um DJI scale-in → profundidade-0 ou fundo de seção completo
  • Vive em uma barra lateral enquanto o conteúdo rola → jornada de coluna sticky
  • Decora uma borda de seção → profundidade-2, revelação de nascimento com clip-path

Etapa 2 — Escolha Suas Técnicas (Mecanismo de Decisão)

Combine a intenção do usuário com a combinação certa de técnicas. Leia os detalhes completos das técnicas nos arquivos references/.

Por Tipo de Projeto

O Usuário DizPadrões PrincipaisTécnica de TextoEfeito Especial
Lançamento de produto / site de marcaProduto flutuante entre seções + Zoom de perspectivaConvergir dividido + Iluminação de palavrasPin DJI scale-in
Herói com título grandeParalaxe de 6 camadas + Sticky fixoSeparar diagonal + Revelação de linha mascaradaTipografia sangrada
Seções cinematográficasEnrolar painel cortina + Linha do tempo scrubEntrada+sair teatralNascimento clip de cima para baixo
Animação estilo AppleLinha do tempo scrub + Wipe clip-pathIluminação de rolagem palavra por palavraCilindro de personagem
Elementos entre seçõesProduto flutuante + Nascimento clip-pathTexto embaralhadoÍris de painel de janela
Seção de cartões / recursosPilha de cartas em cascataInclinar + salto elásticoDescascar seção
Portfólio / vitrineRolagem horizontal + Morfismo FlipWipe de linha clipWipe diagonal
SaaS / startupÍris de painel de janela + Grade escalonadaOnda de fonte variávelViagem de caminho curvo

Por Comportamento de Rolagem Solicitado

  • "fica no lugar enquanto as coisas mudam" → pin: true + linha do tempo scrub
  • "sobe da seção" → Produto flutuante entre seções + nascimento clip-path
  • "nascido do topo" → Nascimento clip de cima para baixo OU enrolar painel cortina
  • "sobreposição/pilha" → Pilha de cartas em cascata OU descascar seção
  • "texto voa dos lados" → Convergir dividido OU layout diagonal separado
  • "texto acende palavra por palavra" → Iluminação de rolagem palavra por palavra
  • "seção inteira transforma" → Íris de painel de janela + linha do tempo scrub
  • "seção cai para baixo" → Clip-path inset(0 0 100% 0) → inset(0)
  • "como uma cortina" → Enrolar painel cortina
  • "círculo abre" → Expandir íris circular
  • "viaja entre seções" → GSAP Flip entre seções OU viagem de caminho curvo

Etapa 3 — Camada Cada Elemento

Todo elemento que você criar DEVE ter um nível de profundidade atribuído. Isso não é negociável.

PROFUNDIDADE 0 → Fundo distante     | paralaxe: 0.10x | desfoque: 8px  | escala: 0.70
PROFUNDIDADE 1 → Brilho/atmosfera    | paralaxe: 0.25x | desfoque: 4px  | escala: 0.85
PROFUNDIDADE 2 → Decorações médias    | paralaxe: 0.50x | desfoque: 0px  | escala: 1.00
PROFUNDIDADE 3 → Objetos principais   | paralaxe: 0.80x | desfoque: 0px  | escala: 1.05
PROFUNDIDADE 4 → Interface / texto    | paralaxe: 1.00x | desfoque: 0px  | escala: 1.00
PROFUNDIDADE 5 → Efeitos de primeiro plano | paralaxe: 1.20x | desfoque: 0px  | escala: 1.10

Aplique como: data-depth="3" em elementos HTML, combinando com classe CSS .depth-3.

→ Sistema de profundidade completo: references/depth-system.md


Etapa 4 — Aplique Acessibilidade e Desempenho (Sempre)

Estes são OBRIGATÓRIOS em toda saída:

@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;
  }
}
  • Anime apenas: transform, opacity, filter, clip-path — nunca width/height/top/left
  • Use will-change: transform apenas em elementos em animação ativa, remova após a animação
  • Use content-visibility: auto em seções fora da tela
  • Use IntersectionObserver para animar apenas elementos no viewport
  • Detecte mobile: window.matchMedia('(pointer: coarse)') — reduza efeitos em toque

→ Detalhes completos: references/performance.md e references/accessibility.md


Etapa 5 — Estrutura de Código (Sempre Use Esta Arquitetura HTML)

<!-- WRAPPER DA SEÇÃO — toda seção segue este padrão -->
<section class="scene" data-scene="hero" style="--scene-height: 200vh">
  
  <!-- CAMADAS DE PROFUNDIDADE — sempre 3+ camadas no mínimo -->
  <div class="layer depth-0" data-depth="0" aria-hidden="true">
    <!-- Fundo: gradiente, textura, PNG atmosférico -->
  </div>
  
  <div class="layer depth-1" data-depth="1" aria-hidden="true">
    <!-- Bolhas de brilho, efeitos de luz, névoa atmosférica -->
  </div>
  
  <div class="layer depth-2" data-depth="2" aria-hidden="true">
    <!-- Decorações médias, formas flutuantes -->
  </div>
  
  <div class="layer depth-3" data-depth="3">
    <!-- PRODUTO PRINCIPAL / IMAGEM HERÓI — estrela do show -->
    <img class="product-hero float-loop" src="product.png" alt="[descrição]" />
  </div>
  
  <div class="layer depth-4" data-depth="4">
    <!-- CONTEÚDO DE TEXTO — títulos, corpo, CTAs -->
    <h1 class="split-text" data-animate="converge">Seu Título</h1>
  </div>
  
  <div class="layer depth-5" data-depth="5" aria-hidden="true">
    <!-- Partículas de primeiro plano, brilhos, sobreposições -->
  </div>

</section>

→ Template completo: assets/hero-section.html → Sistema CSS completo: assets/hero-section.css → Mecanismo JS completo: assets/hero-section.js


Arquivos de Referência — Leia Estes para Detalhes Completos das Técnicas

ArquivoO Que ContémQuando Ler
references/asset-pipeline.mdInspeção de ativos, regras de julgamento de fundo, formato de notificação ao usuário, knockout CSS, alvos de redimensionamentoSEMPRE — execute antes de codificar qualquer coisa
references/cursor-microinteractions.mdCursor personalizado, explosões de partículas, hover magnético, efeitos de inclinaçãoAo construir sites interativos premium
references/depth-system.mdModelo de profundidade de 6 camadas, implementação CSS/JS, fórmulas de desfoque/escalaTodo projeto — leia sempre
references/motion-system.md9 padrões de arquitetura de rolagem com código GSAP completoAo construir interações de rolagem
references/text-animations.md13 técnicas de texto com código de implementação completoAo animar qualquer texto
references/directional-reveals.md8 técnicas de clip-path "nascido do topo/lados"Quando seções precisam de entrada direcional
references/inter-section-effects.mdProduto flutuante, GSAP Flip, viagem entre seçõesQuando produto/elemento persiste entre seções
references/performance.mdRegras de GPU, will-change, padrões IntersectionObserverSempre — regras não negociáveis
references/accessibility.mdWCAG 2.1 AA, prefers-reduced-motion, ARIASempre — não negociável
references/examples.md5 implementações completas do mundo realQuando o usuário precisa de um site de página completa

Gatilhos Proativos

Levante esses problemas SEM ser solicitado quando notá-los no contexto:

  • Usuário envia imagens de produto JPEG → Sinalize que JPEGs não podem ter transparência, ofereça-se para executar o inspetor de ativos
  • Todos os ativos são do mesmo tamanho → Sinalize problema de hierarquia composicional, recomende dimensionamento de herói + companheiro
  • Nenhuma atribuição de profundidade mencionada → Lembre que todo elemento precisa de um nível de profundidade (0-5)
  • Usuário solicita "animações suaves" mas sem tratamento de movimento reduzido → Sinalize requisito de acessibilidade
  • Paralaxe solicitada mas sem otimização de desempenho → Sinalize regras de will-change e aceleração GPU
  • Mais de 80 elementos animados → Sinalize preocupação de desempenho, recomende reduzir ou lazy-loading

Artefatos de Saída

Quando você pedir...Você recebe...
"Construa uma seção hero"Arquivo HTML único com CSS/JS inline, 6 camadas de profundidade, auditoria de ativos, lista de técnicas
"Faça parecer cinematográfico"Linha do tempo scrub + paralaxe + combinação de animação de texto com configuração GSAP
"Inspecione minhas imagens"Relatório de auditoria de ativos com status de fundo, atribuições de profundidade, recomendações de redimensionamento
"Efeito de rolagem estilo Apple"Implementação de iluminação palavra por palavra + seção fixa + zoom de perspectiva
"Corrigir problemas de desempenho"Relatório de validação com lista de verificação de otimização GPU e auditoria will-change

Comunicação

Toda saída segue o padrão de comunicação estruturada:

  • Conclusão primeiro — mostre a auditoria de ativos e o plano de profundidade antes de gerar código
  • O que + Por que + Como — cada escolha de técnica explicada (por que esta animação para este clima)
  • Ações têm donos — "Você precisa fornecer PNGs transparentes" não "PNGs devem ser fornecidos"
  • Marcação de confiança — 🟢 técnica verificada / 🟡 experimental / 🔴 suporte de navegador limitado

Regras Rápidas (Não Negociáveis)

0a. ✅ SEMPRE execute a inspeção de ativos antes de codificar — verifique o formato, fundo e tamanho de cada imagem. Comunique as atribuições de profundidade ao usuário antes de construir. 0b. ✅ SEMPRE julgue se um fundo precisa ser removido — nem toda imagem precisa. Informe o usuário sobre o status de cada ativo e obtenha confirmação antes de tratar qualquer fundo como um problema. Nunca remova automaticamente, nunca ignore silenciosamente.

  1. ✅ Cada seção tem no mínimo 3 camadas de profundidade
  2. ✅ Cada elemento de texto usa pelo menos 1 técnica de animação
  3. ✅ Cada projeto inclui fallback prefers-reduced-motion
  4. ✅ Animar apenas propriedades seguras para GPU: transform, opacity, filter, clip-path
  5. ✅ Imagens de produto sempre atribuídas a profundidade-3 por padrão
  6. ✅ Imagens de fundo sempre profundidade-0 com leve desfoque
  7. ✅ Loops flutuantes em qualquer elemento "herói" (6–14s, nunca completamente estático)
  8. ✅ Cada elemento decorativo recebe aria-hidden="true"
  9. ✅ Mobile recebe efeitos reduzidos via detecção pointer: coarse
  10. ✅ will-change removido após animações terminarem

Formato de Saída

Sempre entregue:

  1. Arquivo HTML único e autossuficiente (CSS + JS inline) a menos que o usuário peça arquivos separados

Habilidades Relacionadas