Communitygithub.com

Sistema de Estado Vazio

Projete e implemente "estados vazios" (telas sem dados) que orientam os usuários, reduzem frustrações e fornecem caminhos claros para ação quando o conteúdo está ausente ou ainda não foi criado.

O que é Sistema de Estado Vazio?

O Sistema de Estado Vazio é uma habilidade para desenvolvedores e designers criarem telas que aparecem quando não há dados a serem exibidos, transformando potenciais becos sem saída em momentos produtivos. Ao invés de mostrar uma tela em branco ou uma mensagem genérica de "Nenhum resultado encontrado", este sistema trata estados vazios como oportunidades para onboarding, educação e descoberta proativa, mantendo o momentum do usuário e esclarecendo a utilidade do sistema. A habilidade suporta cenários como primeira experiência do usuário, resultados de busca sem correspondência, filtragens que resultam em listas vazias e containers vazios (carrinho de compras, central de notificações). O fluxo de trabalho orienta a identificar o gatilho vazio, estabelecer hierarquia visual com ícone/ilustração, mensagem e CTA, redigir cópias orientadas à ação e fornecer caminhos de descoberta secundários (como sugestões e links de reset). Além disso, define regras de decisão (como a regra de uma única ação) e impõe restrições de acessibilidade, responsividade e consistência visual para garantir que os estados vazios sejam úteis, empáticos e eficazes em diferentes plataformas.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/coastdigitalgroup/coastai-skills/tree/HEAD/website-design/empty-state-system

Perguntar na sua IA favorita

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

Documentação

O que Sistema de Estado Vazio faz?

Propósito

O Sistema de Estado Vazio fornece uma estrutura para projetar telas ou componentes que aparecem quando não há dados a serem exibidos. Em vez de mostrar uma tela em branco ou uma mensagem genérica "Nenhum resultado encontrado", este sistema trata estados vazios como oportunidades para onboarding, educação e descoberta proativa. Ele transforma potenciais becos sem saída em momentos produtivos que mantêm o momentum do usuário e esclarecem a utilidade do sistema.

Casos de Uso

  • Primeiras Experiências: Quando um usuário faz login pela primeira vez e não criou nenhum conteúdo (ex.: um painel ou lista de projetos vazios).
  • Resultados de Busca: Quando a consulta de busca de um usuário não retorna resultados.
  • Filtragem: Quando uma combinação de filtros ativos resulta em uma grade vazia.
  • Containers Vazios: Elementos de UI específicos, como um carrinho de compras vazio, uma central de notificações limpa ou uma lista de favoritos nova.
  • Estados de Erro: Quando o conteúdo não carrega devido a problemas de permissão ou conexão (caso de uso secundário).

Quando NÃO Usar

  • Estados de Carregamento: Use um skeleton screen ou spinner quando o conteúdo é esperado para aparecer em breve.
  • Páginas "Mortas" Permanentes: Use uma página 404 para links quebrados ou recursos excluídos.
  • Conteúdo Parcial: Se alguns dados estão disponíveis, mas limitados, use padrões de layout padrão em vez de um estado vazio.
  • Fundos Passivos: Não use para seções que devem ficar em branco por design (ex.: margens ou espaços em branco decorativos).

Entradas

  1. Tipo de Cenário Vazio: É um estado limpo pelo usuário (sucesso), um estado de primeira execução (onboarding) ou uma falha de busca (descoberta)?
  2. Intenção do Usuário: O que o usuário estava tentando alcançar ou encontrar?
  3. Proposta de Valor Central: Qual é o principal benefício do conteúdo que está faltando atualmente?
  4. Ações Disponíveis: Qual é o "melhor próximo passo único" para o usuário?

Saídas

  1. Blueprint de Estado Vazio: Uma definição estrutural incluindo ilustração, título, corpo do texto e CTA primário.
  2. Lógica Contextual: Regras para quando e onde o estado vazio deve ser acionado.
  3. Estratégia de Descoberta: Recomendações de conteúdo sugerido ou dicas educacionais para preencher o vazio.

Fluxo de Trabalho

1. Identificar o Gatilho Vazio

Determine por que o estado está vazio. Categorize-o para escolher o tom correto:

  • Primeira execução (Educacional): Incentive a primeira ação de "criar".
  • Limpo pelo usuário (Positivo): Reconheça a conclusão (ex.: "Tudo em dia!").
  • Busca/Filtro (Ajuda): Forneça maneiras de ampliar ou redirecionar a busca.

2. Estabelecer Hierarquia Visual

Estruture o estado vazio usando a "Regra dos Três Pontos" (modificada para estados vazios):

  • A Âncora (Visual): Um ícone ou ilustração não distrativa que define o tom.
  • O Contexto (Mensagem): Um título claro explicando por que está vazio e um corpo explicando como mudar isso.
  • O Alvo (CTA): Um botão primário que aciona a criação de conteúdo ou redefine filtros.

3. Redigir Cópias Orientadas à Ação

  • Título: Seja específico. Em vez de "Nenhum Item", use "Você ainda não criou nenhum projeto."
  • Corpo: Ofereça valor. "Os projetos ajudam você a organizar suas tarefas. Crie o primeiro para começar."
  • CTA: Use verbos orientados a benefícios. "Criar Projeto" ou "Iniciar Teste Gratuito."

4. Fornecer Caminhos de Descoberta (Ações Secundárias)

Se não houver uma ação direta de "criar" (como na busca), ofereça alternativas:

  • Redefinir: Um link para limpar todos os filtros.
  • Sugestões: Categorias populares ou sugestões de "Você quis dizer?".
  • Educação: Link para documentação ou um tutorial em vídeo.

5. Definir Restrições Técnicas

  • Responsividade: Garanta que o estado vazio permaneça centralizado e legível em viewports pequenos.
  • Acessibilidade: Use papéis ARIA apropriados (ex.: role="status") para garantir que o estado seja anunciado quando aparecer dinamicamente.

Regras de Decisão

  • A Regra da Uma Ação: Concentre-se em exatamente UMA ação primária para evitar sobrecarregar o usuário em um momento de potencial confusão.
  • Empatia sobre Humor: Embora um pouco de personalidade seja aceitável, priorize clareza e utilidade. Evite cópias "inteligentes" que escondem a solução.
  • Direto vs. Indireto:
    • Se o usuário pode resolver (ex.: primeira execução), use um CTA Primário.
    • Se o usuário não pode resolver (ex.: falha na busca), use sugestões ou links de redefinição.
  • Relevância da Imagem: Use ilustrações que reforcem o contexto específico (ex.: uma lupa para busca, uma pasta para arquivos).

Restrições

  • Acessibilidade: As ilustrações de estado vazio devem ter aria-hidden="true" ou ser puramente decorativas. O texto deve atender às taxas de contraste WCAG AA. O CTA primário e quaisquer links/botões secundários devem atender à WCAG 2.2 SC 2.5.8 (tamanho mínimo do alvo de 24x24px).
  • Escala: Os estados vazios não devem exceder a largura do contêiner do conteúdo real que substituem.
  • Consistência: Use o mesmo estilo visual e layout para todos os estados vazios em todo o site para construir reconhecimento de padrão.

Padrões Comuns de Falha

  • O "Beco Sem Saída": Dizer ao usuário que algo está vazio sem dizer como resolver.
  • Superdesign: Usar ilustrações complexas e pesadas que distraem do CTA primário.
  • Tom Negativo: Usar linguagem que soe como erro ou falha (ex.: "Busca Falhou!").
  • Cópia Genérica: Usar "Nenhum resultado" para tudo, desde busca até onboarding pela primeira vez.
  • Transbordamento em Mobile: Designs que ficam ótimos no desktop, mas exigem rolagem vertical no mobile apenas para ver o CTA.

Critérios de Validação

  • O estado vazio explica claramente por que está aparecendo.
  • Há um CTA primário claro e acionável ou um caminho de "redefinir".
  • A hierarquia visual leva o olho do visual até o CTA.
  • O tom corresponde ao contexto (onboarding vs. falha na busca).
  • O estado é acessível (contraste, navegação por teclado, anúncios de leitor de tela via role="status" ou região ativa equivalente).
  • O CTA primário atende à WCAG 2.2 SC 2.5.8 (tamanho mínimo do alvo de 24x24px).
  • O layout é responsivo e centralizado dentro de seu contêiner pai.

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.

Habilidades Relacionadas