Glossário

Glossário — shadcn/ui

Termos-chave, ordem alfabética. Formato: **Termo** — definição (chNNN).

@theme / @theme inline — diretivas Tailwind v4 que expõem CSS vars como utilities; inline referencia direto sem re-wrap (ch004, ch018, ch094) @workspace/ui — nome convencional do package de UI compartilhado num monorepo shadcn (ch092) align / side — props de posicionamento de popups; side aceita valores lógicos inline-start/inline-end (ch044-ch052) base (components.json) — biblioteca de primitivos: base, radix ou aria (ch002, ch003) baseColor — paleta seed dos tokens de tema (neutral, stone, zinc...); imutável após init (ch003, ch004) Button / buttonVariants — wrapper de <button> com variant/size; buttonVariants estiliza <a> puro sem forçar role (ch020) Calendar / --cell-size / captionLayout — calendário react-day-picker; var que controla densidade visual; label estático vs dropdown de mês/ano (ch032) Card / --card-spacing — container header/content/footer; variável central de espaçamento interno (ch064) Choice Card — padrão onde FieldLabel envolve o Field inteiro, tornando toda a área clicável (ch027, ch030) cmdk — biblioteca (não Base UI) que dá base ao Command (ch054) Combobox / itemToStringValue — dropdown de busca com filtro; função que mapeia item objeto → string exibida/filtrada (ch034) Content negotiation — headers Accept/User-Agent fazem uma URL de registry servir HTML a humanos e JSON à CLI/MCP (ch097, ch099) data-icon="inline-start"/"inline-end" — atributo exigido em ícones/Spinner dentro de Button/Badge/InputGroup pro espaçamento (ch020, ch059, ch061) data-invalid / aria-invalid — par: data-invalid no Field pai ativa estilo de erro, aria-invalid no controle sinaliza o estado (ch019-ch030, ch088-ch091) data-slot — atributo em todo primitivo shadcn (Tailwind v4), hook de estilização (ch094) Data Table — não é componente: guia de acoplar TanStack Table v9 ao Table (ch066) Dependency resolution order — algoritmo do registry: fetch → resolve registryDependencies recursivo → topo sort → dedup por target (último vence) → deep-merge configs (ch104) DirectionProvider / useDirection — provider que define direction (ltr/rtl) pra árvore; hook que lê essa direção (ch077, ch083) Drawer / swipeDirection / snapPoints — bottom sheet migrado de Vaul para Base UI; direção de swipe; pontos de encaixe (ch047) Field / FieldGroup / FieldSet / FieldError — wrapper de formulário: label+descrição+erro; agrupamento; seção semântica; slot de erro (children, RHF errors, Standard Schema issues) (ch019, ch025, ch035) FieldArray (Formisch) — componente do Formisch pra arrays de campos, expõe items com keys estáveis (ch090) form.Field (TanStack Form) — componente render-prop equivalente ao Controller do RHF (ch089) InputGroup / InputOTP — wrapper que embute ícone/texto/botão na borda visual do input; PIN input baseado em input-otp (ch023, ch024) Item — container flex para listas com mídia/título/descrição/ações; usar pra conteúdo estático (Field é pra inputs) (ch071) Kbd / KbdGroup — exibição de tecla(s) de atalho; agrupamento de múltiplas Kbd (ch072) logical classes (start-/end-) — classes Tailwind direcionais RTL-aware geradas automaticamente com rtl: true (ch083) NativeSelect — wrapper estilizado sobre <select> HTML nativo, com OptGroup e Option (ch029) next-themes / remix-themes — libs de dark mode: gerencia classe dark+persistência no Next; cookie de sessão server-side no Remix (ch079, ch082) registries (components.json) — URLs de registry nomeadas (com auth opcional) usadas por shadcn add @nome/item (ch003, ch097, ch102, ch104) registry.json / registry-item.json — schema de entrada de registry customizado (name, homepage, items/include); schema de item instalável individual (ch098-ch100, ch107, ch108) registryDependencies — dependências de um item: nome simples, @namespace/item, owner/repo/item#ref, URL ou path local (ch099, ch101, ch104, ch108) registry:base / registry:font / registry:item — tipo pra design system completo; instala Google Font; tipo universal com target explícito por arquivo (ch100, ch108) render prop (Base UI)render={<Componente />} injeta elemento customizado em Trigger/Link/Close, substitui asChild (ch033-ch039, ch044-ch047) RTL (rtl: true) — flag do components.json que converte classes físicas em lógicas automaticamente ao rodar shadcn add (ch083-ch086) shadcn build — gera JSON estático de registry a partir de um registry.json fonte, resolvendo include (ch099) shadcn MCP server — servidor MCP pra navegar/buscar/instalar itens de registry via linguagem natural (ch097, ch103) Sidebar / SidebarProvider / useSidebar — navegação lateral com contexto raiz controlando open/collapsed/mobile; hook que expõe esse estado (ch039) Skeleton / Spinner — placeholder pulsante de loading; ícone de loading indeterminado (LoaderIcon + animate-spin) (ch059, ch060) Standard Schema — protocolo genérico de validação suportado por RHF e TanStack Form, troca Zod por outra lib (ch088, ch089) style (components.json) — estilo visual do componente, ex. new-york (ch003) tableFeatures() — motor de data table opt-in por feature (TanStack Table v9), tree-shakeable (ch066) target — campo em files[] que controla local de instalação; obrigatório em registry:page/registry:file (ch100, ch108) Toast / Toaster — notificação temporária imperativa Base UI (toast.add/toast.promise); precisa estar montado na árvore (ch056, ch057) Toggle / ToggleGroup — botão com estado pressionado on/off, individual ou agrupado (ch074, ch075) Typeset (typeset.css) — CSS que estiliza markdown renderizado via 3 variáveis de ritmo: size, leading, flow (ch005) Universal items — itens de registry instaláveis sem detecção de framework/components.json, via target explícito (CLI 2.9.0+) (ch100) useActionState — hook React 19 que conduz form state/pending/errors com uma Server Action (ch091) useFieldArray (RHF) — hook do React Hook Form pra arrays de campos dinâmicos: fields/append/remove (ch088) Valibot — lib de validação usada pelo Formisch (análoga ao Zod) (ch090) variant="destructive" — estiliza item/ação como perigosa em Alert, Alert Dialog, Context Menu, Dropdown Menu (ch045, ch051, ch052, ch055) zodResolver — conecta um schema Zod ao useForm do RHF via @hookform/resolvers/zod (ch088)