2.3 KiB
2.3 KiB
Why
O site público já possui uma abertura focal na home, mas o restante da experiência ainda muda de estado de forma desigual entre páginas e seções. WEB-01, WEB-07 e os requisitos transversais de acessibilidade pedem uma coreografia editorial consistente, progressiva e dispensável, sem ocultar conteúdo nem comprometer interação, performance ou movimento reduzido.
What Changes
- Evoluir o contrato de motion do site público com abertura de página, sequência editorial inicial e reveals direcionais executados uma única vez.
- Aplicar a coreografia à home, serviços, portfólio, detalhe, sobre, contato, privacidade e páginas de erro 404/419/429/500/503.
- Alternar depoimentos entre esquerda e direita, filtrando citações vazias antes de renderizar a sequência.
- Adicionar feedback curto e não bloqueante a links, CTAs, navegação e controles de formulário, preservando foco e mensagens de validação.
- Garantir estado final imediato sem JavaScript, sem
IntersectionObservere comprefers-reduced-motion: reduce. - Limitar o progresso/índice da home a uma atualização por frame e ampliar testes de marcação, browser, acessibilidade e console.
- Não objetivos: não criar transições entre rotas, alterar conteúdo ou layout estrutural, adicionar biblioteca de animação, modificar CMS/API/banco/Filament, nem introduzir itens fora do MVP listados em SPEC.md §4.2.
Capabilities
New Capabilities
public-site-motion: Coreografia progressiva, direções, timings, execução única, microfeedback, performance e fallbacks do motion público.
Modified Capabilities
design-tokens: Especificar tokens compartilhados de duração, stagger, distância e easing para motion editorial.public-site-pages: Cobrir todas as páginas públicas visuais e templates de erro com o contrato compartilhado de abertura e reveal.testimonials: Filtrar citações vazias e alternar explicitamente a direção de entrada dos depoimentos renderizados.web-accessibility: Ampliar axe/console e validar conteúdo imediatamente utilizável com movimento reduzido ou enhancement indisponível.
Impact
Afeta somente templates Blade públicos, resources/js/motion.js, tokens/regras CSS e testes Pest/Pest Browser. Não altera APIs, banco, controllers, CMS, dependências, endpoints técnicos (sitemap.xml, robots.txt) ou Filament.