core-components
Ajuda seu agente a usar partes de design prontas e padrões visuais. É útil para criar interfaces de usuário consistentes e bonitas.
O que ela faz
Esta ferramenta ajuda a criar interfaces visuais para aplicativos. Ela fornece blocos de construção pré-fabricados (componentes) e regras de estilo (tokens) para garantir que tudo fique bonito e funcione de forma consistente.
Quando usar
- ✓Ao criar a aparência de um aplicativo.
- ✓Quando você precisa de cores, espaçamentos ou tamanhos de fonte padronizados.
- ✓Para garantir que diferentes partes do aplicativo pareçam iguais.
Exemplo do que pedir para a IA
“Crie um botão azul com o texto 'Enviar' que fica desativado.”
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 usa 'componentes' que são como peças de Lego para construir a interface. Ela também usa 'tokens', que são valores pré-definidos para cores e espaçamentos, em vez de números aleatórios, para manter tudo uniforme.
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 core-componentsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/core-components/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.
Componentes Principais
Visão Geral do Sistema de Design
Use componentes da sua biblioteca principal em vez de componentes brutos da plataforma. Isso garante consistência no estilo e no comportamento.
Tokens de Design
NUNCA codifique valores diretamente. Sempre use tokens de design.
Tokens de Espaçamento
// CORRECT - Use tokens
<Box padding="$4" marginBottom="$2" />
// WRONG - Hard-coded values
<Box padding={16} marginBottom={8} />
| Token | Valor |
|---|---|
$1 |
4px |
$2 |
8px |
$3 |
12px |
$4 |
16px |
$6 |
24px |
$8 |
32px |
Tokens de Cores
// CORRECT - Semantic tokens
<Text color="$textPrimary" />
<Box backgroundColor="$backgroundSecondary" />
// WRONG - Hard-coded colors
<Text color="#333333" />
<Box backgroundColor="rgb(245, 245, 245)" />
| Token Semântico | Usar Para |
|---|---|
$textPrimary |
Texto principal |
$textSecondary |
Texto de apoio |
$textTertiary |
Texto desabilitado/dica |
$primary500 |
Cor da marca/acento |
$statusError |
Estados de erro |
$statusSuccess |
Estados de sucesso |
Tokens de Tipografia
<Text fontSize="$lg" fontWeight="$semibold" />
| Token | Tamanho |
|---|---|
$xs |
12px |
$sm |
14px |
$md |
16px |
$lg |
18px |
$xl |
20px |
$2xl |
24px |
Componentes Principais
Box
Componente de layout base com suporte a tokens:
<Box
padding="$4"
backgroundColor="$backgroundPrimary"
borderRadius="$lg"
>
{children}
</Box>
HStack / VStack
Layouts flexíveis horizontal e vertical:
<HStack gap="$3" alignItems="center">
<Icon name="user" />
<Text>Username</Text>
</HStack>
<VStack gap="$4" padding="$4">
<Heading>Title</Heading>
<Text>Content</Text>
</VStack>
Text
Tipografia com suporte a tokens:
<Text
fontSize="$lg"
fontWeight="$semibold"
color="$textPrimary"
>
Hello World
</Text>
Button
Botão interativo com variantes:
<Button
onPress={handlePress}
variant="solid"
size="md"
isLoading={loading}
isDisabled={disabled}
>
Click Me
</Button>
| Variante | Usar Para |
|---|---|
solid |
Ações primárias |
outline |
Ações secundárias |
ghost |
Ações terciárias/sutis |
link |
Ações em linha |
Input
Campo de formulário com validação:
<Input
value={value}
onChangeText={setValue}
placeholder="Enter text"
error={touched ? errors.field : undefined}
label="Field Name"
/>
Card
Contêiner de conteúdo:
<Card padding="$4" gap="$3">
<CardHeader>
<Heading size="sm">Card Title</Heading>
</CardHeader>
<CardBody>
<Text>Card content</Text>
</CardBody>
</Card>
Padrões de Layout
Layout de Tela
const MyScreen = () => (
<Screen>
<ScreenHeader title="Page Title" />
<ScreenContent padding="$4">
{/* Content */}
</ScreenContent>
</Screen>
);
Layout de Formulário
<VStack gap="$4" padding="$4">
<Input label="Name" {...nameProps} />
<Input label="Email" {...emailProps} />
<Button isLoading={loading}>Submit</Button>
</VStack>
Layout de Item de Lista
<HStack
padding="$4"
gap="$3"
alignItems="center"
borderBottomWidth={1}
borderColor="$borderLight"
>
<Avatar source={{ uri: imageUrl }} size="md" />
<VStack flex={1}>
<Text fontWeight="$semibold">{title}</Text>
<Text color="$textSecondary" fontSize="$sm">{subtitle}</Text>
</VStack>
<Icon name="chevron-right" color="$textTertiary" />
</HStack>
Anti-Padrões
// WRONG - Hard-coded values
<View style={{ padding: 16, backgroundColor: '#fff' }}>
// CORRECT - Design tokens
<Box padding="$4" backgroundColor="$backgroundPrimary">
// WRONG - Raw platform components
import { View, Text } from 'react-native';
// CORRECT - Core components
import { Box, Text } from 'components/core';
// WRONG - Inline styles
<Text style={{ fontSize: 18, fontWeight: '600' }}>
// CORRECT - Token props
<Text fontSize="$lg" fontWeight="$semibold">
Padrão de Props de Componentes
Ao criar componentes, use props baseados em tokens:
interface CardProps {
padding?: '$2' | '$4' | '$6';
variant?: 'elevated' | 'outlined' | 'filled';
children: React.ReactNode;
}
const Card = ({ padding = '$4', variant = 'elevated', children }: CardProps) => (
<Box
padding={padding}
backgroundColor="$backgroundPrimary"
borderRadius="$lg"
{...variantStyles[variant]}
>
{children}
</Box>
);
Integração com Outras Habilidades
…
Perguntas frequentes
O que são 'componentes'?
São blocos de construção prontos para usar, como botões, caixas de texto e layouts, que facilitam a criação da interface do seu aplicativo.
O que são 'tokens'?
São valores padronizados para coisas como cores, espaçamentos e tamanhos de fonte. Usar tokens garante que seu aplicativo tenha uma aparência consistente em todos os lugares.
Por que não devo usar cores ou números diretamente?
Usar tokens em vez de valores fixos (como '#FFFFFF' ou '16px') garante que seu aplicativo possa ser atualizado facilmente e mantenha um design coeso, mesmo que os estilos mudem.
Detalhes
Descrição original do autor
Core component library and design system patterns. Use when building UI, using design tokens, or working with the component library.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2658
- 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