shadcn
Gerencia componentes e projetos de interface do usuário (UI). Fornece contexto e documentação para criar sistemas de design modernos.
O que ela faz
shadcn/ui é um conjunto de ferramentas para criar interfaces de usuário e sistemas de design. Ele adiciona componentes prontos diretamente no seu projeto através de um comando.
Quando usar
- ✓Adicionar novos componentes visuais ao seu projeto.
- ✓Ajustar a aparência ou corrigir problemas em componentes existentes.
- ✓Começar um novo projeto ou mudar o estilo visual dele.
Exemplo do que pedir para a IA
“Como adiciono um botão de card ao meu projeto?”
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
Você usa um comando especial (CLI) no seu terminal, como `npx shadcn@latest add card`, para que a ferramenta insira o código do componente diretamente no seu projeto. Ela também te ajuda a encontrar documentação e exemplos de uso.
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 shadcnOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/shadcn/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.
shadcn/ui
Uma framework para construir interfaces de usuário, componentes e sistemas de design. Os componentes são adicionados como código-fonte ao projeto do usuário via CLI.
IMPORTANTE: Execute todos os comandos da CLI usando o gerenciador de pacotes do projeto:
npx shadcn@latest,pnpm dlx shadcn@latest, oubunx --bun shadcn@latest— com base nopackageManagerdo projeto. Os exemplos abaixo usamnpx shadcn@latest, mas substitua pelo gerenciador correto para o seu projeto.
Quando Usar
- Use ao adicionar novos componentes do shadcn/ui ou de registros da comunidade.
- Use ao estilizar, compor ou depurar componentes existentes do shadcn/ui.
- Use ao inicializar um novo projeto ou trocar presets de sistema de design.
- Use para obter documentação de componentes, exemplos e referências de API.
Contexto Atual do Projeto
!`npx shadcn@latest info --json 2>/dev/null || echo '{"error": "No shadcn project found. Run shadcn init first."}'`
O JSON acima contém a configuração do projeto e os componentes instalados. Use npx shadcn@latest docs <component> para obter URLs de documentação e exemplos para qualquer componente.
Princípios
- Use componentes existentes primeiro. Use
npx shadcn@latest searchpara verificar os registros antes de escrever UI personalizada. Verifique também os registros da comunidade. - Componha, não reinvente. Página de configurações = Tabs + Card + controles de formulário. Dashboard = Sidebar + Card + Chart + Table.
- Use variantes integradas antes de estilos personalizados.
variant="outline",size="sm", etc. - Use cores semânticas.
bg-primary,text-muted-foreground— nunca valores brutos comobg-blue-500.
Regras Críticas
Estas regras são sempre aplicadas. Cada uma se conecta a um arquivo com pares de código Incorreto/Correto.
Estilização & Tailwind → styling.md
classNamepara layout, não para estilização. Nunca sobrescreva cores ou tipografia de componentes.- Sem
space-x-*ouspace-y-*. Useflexcomgap-*. Para pilhas verticais,flex flex-col gap-*. - Use
size-*quando largura e altura forem iguais.size-10e nãow-10 h-10. - Use a abreviação
truncate. Nãooverflow-hidden text-ellipsis whitespace-nowrap. - Sem sobrescrita manual de cores
dark:. Use tokens semânticos (bg-background,text-muted-foreground). - Use
cn()para classes condicionais. Não escreva ternários manuais em template literals. - Sem
z-indexmanual em componentes de sobreposição. Dialog, Sheet, Popover, etc. cuidam de sua própria empilhamento.
Formulários & Inputs → forms.md
- Formulários usam
FieldGroup+Field. Nunca usedivbruto comspace-y-*ougrid gap-*para layout de formulário. InputGroupusaInputGroupInput/InputGroupTextarea. Nunca useInput/Textareabrutos dentro deInputGroup.- Botões dentro de inputs usam
InputGroup+InputGroupAddon. - Conjuntos de opções (2–7 escolhas) usam
ToggleGroup. Não faça loop deButtoncom estado ativo manual. FieldSet+FieldLegendpara agrupar checkboxes/radios relacionados. Não use umdivcom um título.- Validação de campo usa
data-invalid+aria-invalid.data-invalidemField,aria-invalidno controle. Para desabilitado:data-disabledemField,disabledno controle.
Estrutura de Componentes → composition.md
- Itens sempre dentro de seu Grupo.
SelectItem→SelectGroup.DropdownMenuItem→DropdownMenuGroup.CommandItem→CommandGroup. - Use
asChild(radix) ourender(base) para gatilhos personalizados. Verifique o campobasedenpx shadcn@latest info. → base-vs-radix.md - Dialog, Sheet e Drawer sempre precisam de um Título.
DialogTitle,SheetTitle,DrawerTitlesão necessários para acessibilidade. UseclassName="sr-only"se visualmente oculto. - Use composição completa de Card.
CardHeader/CardTitle/CardDescription/CardContent/CardFooter. Não despeje tudo emCardContent. - Button não tem
isPending/isLoading. Componha comSpinner+data-icon+disabled. TabsTriggerdeve estar dentro deTabsList. Nunca renderize gatilhos diretamente emTabs.Avatarsempre precisa deAvatarFallback. Para quando a imagem falha ao carregar.
Use Componentes, Não Markup Personalizado → composition.md
- Use componentes existentes antes de markup personalizado. Verifique se um componente existe antes de escrever um
divestilizado. - Callouts usam
Alert. Não construa divs estilizados personalizados. - Estados vazios usam
Empty. Não construa markup de estado vazio personalizado. - Toast via
sonner. Usetoast()desonner.
…
Perguntas frequentes
O que é shadcn/ui?
É uma coleção de componentes de interface (como botões, cards, menus) que você pode adicionar ao seu projeto de programação para construir interfaces modernas de forma mais rápida e consistente.
Como eu uso os componentes?
Você usa um comando específico no terminal para adicionar os componentes que precisa. Depois, eles aparecem como código fonte no seu projeto, prontos para serem usados e personalizados.
Preciso saber muito sobre design para usar?
Não necessariamente. O shadcn/ui já vem com um design consistente e boas práticas. Ele te guia para usar cores semânticas e compor componentes existentes, facilitando a criação de interfaces bonitas e funcionais.
Detalhes
Descrição original do autor
Manages shadcn/ui components and projects, providing context, documentation, and usage patterns for building modern design systems.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4154
- 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