Tokens de cores semânticas explicados

Um token de cor semântica nomeia uma cor pelo que ela faz, não pelo que ela parece: --primary, --muted-foreground, --border. Defina as funções uma vez para os modos claro e escuro, estilize com base nos nomes e todo o seu UI terá temas coerentes. Este é o modelo por trás do shadcn/ui e da tematização do Tailwind.

Atualizado 2026-07-13

Semântico vs cor bruta

Um token de cor bruta nomeia a própria cor: --blue-500, --gray-900. Um token semântico nomeia o trabalho que a cor realiza: --primary, --background, --muted-foreground. Os componentes podem, então, ignorar os matizes literais da marca. Um botão estilizado com bg-primary text-primary-foreground funciona com verde sálvia, rosa choque ou um tema escuro porque a função permanece fixa enquanto seu valor muda.

Este é o modelo que o shadcn/ui popularizou e sobre o qual a tematização do Tailwind é construída. Com tokens semânticos, a re-tematização de um app pode ser limitada a um único bloco :root. Classes fixas como bg-gray-900 e text-white transformam essa mesma mudança em uma busca por todo o código.

A regra de pareamento foreground

A maioria das funções base vem com uma função -foreground pareada para texto ou ícones naquela superfície: --primary / --primary-foreground, --card / --card-foreground, --muted / --muted-foreground. Use --primary-foreground sobre --primary em vez de esperar que o foreground padrão tenha contraste suficiente. Cada par ainda deve ser verificado em ambos os modos.

As 28 funções que um sistema completo precisa

Uma paleta mínima de três cores deixa 25 decisões indefinidas: estados de hover, texto suave, bordas, anéis de foco, séries de gráficos, modo escuro. Um sistema completo nomeia todas elas. Os kits do Identity Forge definem essas 28 funções, agrupadas pelo que fazem, para os modos claro e escuro:

  • Superfícies: background / foreground, card / card-foreground, popover / popover-foreground. A página, painéis elevados e camadas flutuantes, cada uma com sua cor de texto legível.
  • Marca e ênfase: primary / primary-foreground, secondary / secondary-foreground, accent / accent-foreground. A ação principal, a de suporte e o destaque.
  • Suave e neutro: muted / muted-foreground. Fundos suaves e texto secundário.
  • Estado: destructive / destructive-foreground, success / success-foreground, warning / warning-foreground. Erros, confirmações e avisos.
  • Formulário e foco: border, input, ring. Divisores e contornos, superfícies de campos de formulário e o indicador de foco.
  • Dados: chart-1, chart-2, chart-3, chart-4, chart-5. Cinco cores de série distintas e alinhadas à marca para que os gráficos não recorram a uma paleta padrão genérica.

Por que cinco cores de gráfico importam

A visualização de dados é onde sistemas mal especificados quebram de forma mais visível: um dashboard com três cores de marca e um arco-íris aleatório em seu gráfico de barras. Definir chart-1...5 antecipadamente mantém os gráficos dentro da mesma linguagem visual do restante do app.

Veja as funções em um kit real

Abaixo está o kit gratuito ambient-sage renderizado inteiramente a partir desses tokens. A linha de amostras é --primary, --secondary, --accent e as cinco funções de gráfico; o botão usa --primary com --primary-foreground; as superfícies usam --background, --card e --muted. Nada aqui é uma cor fixa:

Ambient Sage

Live render

Rendered from the kit's actual tokens, fonts, and treatments

AmbientSage/Dashboard
Search...⌘K
AS

Dashboard

Welcome back — here's how AmbientSage is performing today.

Jan 1 – Jan 30, 2026
Overview
Analytics
Reports
Notifications

Active users

15.1k

+5%

Trending up this month

vs. previous 30 days

MRR

$49.1k

+3%

Strong recurring growth

Net of churn

Retention

89%

+2%

Engagement above target

Rolling 28-day window

NPS

69

+3

Meets growth projections

Survey · n=1,204

Total revenue

Last 12 months

$49.1k+18.2%

12m30d7d
JanFebMarAprMayJunJulAugSepOctNovDec

Recent sales

You closed 265 deals this month.

AR

Alex Rivera

alex@ambientsage.com

+$1,999.00
MO

Mira Okonkwo

mira@ambientsage.com

+$39.00
JF

Jonas Feld

jonas@ambientsage.com

+$299.00
SQ

Sana Qureshi

sana@ambientsage.com

+$99.00
TL

Theo Lindgren

theo@ambientsage.com

+$2,400.00

Recent transactions

View all
CustomerStatusDateAmount
AR

Alex Rivera

Founder & CEO

Paid2m ago$1,999.00
MO

Mira Okonkwo

Head of Product

Pending1h ago$39.00
JF

Jonas Feld

Design Lead

Processing3h ago$299.00
SQ

Sana Qureshi

Engineering Lead

PaidYesterday$99.00
TL

Theo Lindgren

Brand Director

Refunded2d ago$2,400.00

Typography

Plus Jakarta Sans

Color system

28 semantic roles, light + dark

Agent outputs

DESIGN.md, CSS, Tailwind, shadcn

Cada cor que você vê é um token semântico. Alterne um kit e cada função assume um novo valor enquanto o código do componente permanece idêntico.

Obtenha um conjunto completo de tokens

Você pode definir todas as 28 funções manualmente, mas é tedioso manter o equilíbrio e a acessibilidade entre os modos claro e escuro. Cada kit do Identity Forge já as envia completas em ambos os modos, exportáveis como variáveis CSS, Tailwind v3/v4 @theme, um item de registro shadcn ou DTCG/W3C JSON. A maneira mais rápida de inserir um conjunto completo em um projeto shadcn/ui:

npx shadcn add https://identityforge.io/r/ambient-sage.json
Instala todas as 28 funções semânticas (claro + escuro) no seu tema

Os tokens também são metade de um DESIGN.md: os valores que o briefing escrito referencia. Juntos, eles são o que você fornece a um agente de codificação para que a UI dele permaneça coerente.

FAQ

O que são tokens de cores semânticas?

Variáveis de cor nomeadas por função em vez de matiz: `--primary`, `--background`, `--muted-foreground` em vez de `--blue-500`. Os componentes são estilizados com base no nome da função, então alterar temas ou mudar para o modo escuro nunca exige a edição dos componentes.

Quantos tokens de cores um design system precisa?

O Identity Forge usa 28 funções semânticas: superfícies com seus foregrounds, funções de marca e suaves, cores de estado, funções de formulário e cinco cores de gráfico. Cada função tem um valor claro e um escuro.

Qual é a convenção -foreground?

A maioria das funções base é pareada com uma função `-foreground` para o texto ou ícones colocados naquela superfície: `--primary` com `--primary-foreground`. O pareamento garante contraste legível tanto no modo claro quanto no escuro, sem adivinhações.

Como eu exporto um conjunto completo de tokens semânticos?

Cada kit do Identity Forge exporta suas 28 funções (claro + escuro) como variáveis CSS, Tailwind v3/v4 @theme, um item de registro shadcn ou DTCG/W3C JSON. Para shadcn/ui, `npx shadcn add https://identityforge.io/r/<slug>.json` instala-os diretamente.