ux-feedback
Ajuda seu agente a mostrar o que está acontecendo na tela. Ele adiciona mensagens de carregamento, sucesso ou erro para que o usuário saiba o status.
O que ela faz
Esta ferramenta adiciona mensagens de status importantes para que o usuário saiba o que está acontecendo. Ela mostra quando algo está carregando, se houve um erro, se não há nada para mostrar ou se uma ação foi concluída com sucesso.
Quando usar
- ✓Quando uma página ou seção está demorando para carregar.
- ✓Quando uma ação do usuário falha e precisa de uma mensagem de erro.
- ✓Quando uma lista de itens está vazia e o usuário precisa de uma dica do que fazer.
Exemplo do que pedir para a IA
“Adicione estados de feedback de usuário para a seção de perfil do usuário.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta analisa seu código para encontrar onde os dados são exibidos. Em seguida, ela insere automaticamente os códigos necessários para mostrar mensagens de 'carregando', 'vazio', 'erro' ou 'sucesso' nesses locais.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill ux-feedbackOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/ux-feedback/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Gerador de Estados de Feedback de UX
Quando Usar
Use esta habilidade quando precisar adicionar estados de feedback apropriados para o usuário (carregando, sucesso, erro, vazio) a um componente ou página.
Quando NÃO Usar
- Apenas para as palavras dentro de um estado → use
/ss-copy - Para problemas de acessibilidade em estados existentes → use
/ss-a11y - Para criação de componentes totalmente novos → use
/ss-component - Para configuração de analytics ou registro de erros — apenas apresentação de UI
Alvo: $ARGUMENTS
Instruções
Leia o arquivo alvo e identifique todas as áreas dependentes de dados.
Leia a referência da linguagem de design:
- Seções
DESIGN-LANGUAGE.mdsobre Estados de Carregamento (Esqueleto), Estados Vazios, Estados de Erro
- Seções
Para cada área dependente de dados, implemente TODOS os 4 estados:
Estado 1: Carregando (Esqueleto)
// Skeleton must match the final layout shape
<div className="bg-card rounded-2xl p-6 shadow-[var(--shadow-card)]">
<div className="flex items-center gap-2 mb-3">
<div className="size-7 bg-surface-muted rounded-lg animate-pulse" />
<div className="h-3 w-16 bg-surface-muted rounded animate-pulse" />
</div>
<div className="h-9 w-24 bg-surface-muted rounded-lg animate-pulse mb-3" />
<div className="h-3 w-12 bg-surface-muted rounded animate-pulse" />
</div>
Regras:
- Exiba o esqueleto por no mínimo 300ms (evite flash)
- Atrasar a exibição do esqueleto em 300ms (cargas rápidas pulam o esqueleto completamente)
- Use
animate-pulse(ciclo de 1,5s) - Combine as formas do esqueleto com as dimensões do conteúdo real
- Nunca use spinners dentro de cards
Estado 2: Vazio (Sem Dados)
<EmptyState
icon={PackageIcon}
title="No activity yet"
description="Create your first project to get started."
action={<Button>Create Project</Button>}
/>
Regras:
- Alinhado ao centro no card
- Ícone: 32px,
text-text-tertiary - Título: 14px,
text-text-secondary - Sempre sugira uma próxima ação
- Valores zero são exibidos como "0" (não oculte ou use traço)
Estado 3: Erro (Falha ao Carregar)
<div className="flex flex-col items-center justify-center py-8 text-center">
<AlertCircle className="size-8 text-destructive mb-3" />
<p className="text-[14px] text-text-secondary mb-4">Couldn't load the data</p>
<Button variant="brandGhost" size="sm" onClick={retry}>Try again</Button>
</div>
Regras:
- Falha parcial: apenas o card afetado exibe erro, o restante carrega normalmente
- Falha na página inteira: EmptyState em tela cheia com opção de tentar novamente
- Mensagem de erro: linguagem clara, culpe o sistema
- Sempre forneça um botão para tentar novamente
Estado 4: Sucesso (Feedback de Ação)
// Toast notification for action confirmations
toast("Changes saved")
// With undo for destructive actions
toast("Item deleted", { action: { label: "Undo", onClick: handleUndo } })
Regras:
- Toast de informação: exibição de 3s
- Toast de ação (com desfazer): exibição de 5s
- Posição do toast: acima do BottomNav
- Um toast por vez (novo substitui o antigo)
- Padrão de implementação:
function DataCard({ data, isLoading, error }) {
if (isLoading) return <DataCardSkeleton />
if (error) return <DataCardError onRetry={refetch} />
if (!data || data.length === 0) return <DataCardEmpty />
return <DataCardContent data={data} />
}
- Verifique
prefers-reduced-motion— desabiliteanimate-pulsequando o movimento reduzido for preferido.
Limitações
- Use esta habilidade apenas quando a tarefa corresponder claramente à sua origem anterior e ao contexto do projeto local.
- Verifique comandos, código gerado, dependências, credenciais e comportamento de serviços externos antes de aplicar alterações.
- Não trate exemplos como substitutos para testes específicos do ambiente, revisão de segurança ou aprovação do usuário para ações destrutivas ou custosas.
Perguntas frequentes
O que são 'estados de feedback'?
São as mensagens e indicadores visuais que a interface mostra para informar o usuário sobre o que está acontecendo, como um círculo girando para indicar carregamento ou uma mensagem de 'nada encontrado'.
Por que é importante ter esses estados?
Eles melhoram a experiência do usuário, tornando a interface mais clara e informativa. O usuário sabe o que esperar e como agir, evitando confusão.
Isso vai mudar o visual do meu site?
A ferramenta usa um estilo pré-definido que combina com o design atual, focando em clareza e funcionalidade, sem alterar drasticamente a aparência.
Detalhes
Descrição original do autor
Add appropriate user feedback states (loading, success, error, empty) to a component or page
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4473
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
accessibility
Ajuda seu agente a criar interfaces que todos possam usar. Garante que sites e aplicativos funcionem bem para pessoas com deficiência, como cegos ou com mobilidade reduzida.
affaan-m/ECC
design-system
Ajuda seu agente a criar um sistema de design a partir de um código existente. Ele extrai informações visuais e verifica a consistência, gerando um relatório e uma prévia interativa.
affaan-m/ECC
liquid-glass-design
Ajuda seu agente a criar interfaces de usuário com efeito 'Liquid Glass' para iOS. Permite adicionar efeitos visuais dinâmicos e interativos em SwiftUI e UIKit.
affaan-m/ECC