O que é shadcn/ui? Guia comparativo com MUI, Chakra UI e outras bibliotecas de componentes

Introdução: no mês passado, assumi um projeto antigo e, ao abrir o package.json, dei de cara com Material-UI 5.x. Senti um frio na barriga. Não porque o MUI seja ruim, mas porque o projeto precisava ter um visual que não lembrasse em nada o Material Design. Pensei: lá vamos nós outra vez “brigar” com o sistema de temas do MUI. Foi então que me lembrei do shadcn/ui — a biblioteca de componentes que, na primeira vez que usei, me fez pensar: “é exatamente isso que eu queria”.
1. shadcn/ui: a biblioteca de componentes que não é uma biblioteca tradicional
1.1 A filosofia Copy & Own
O shadcn/ui é interessante porque, na prática, nem sequer é um pacote npm.
Você não verá um comando como npm install shadcn-ui. Em vez disso, ele entrega uma coleção de código de componentes que você copia diretamente para o seu projeto. Você copia, cola e, a partir daí, o código é seu.
Para ser sincero, quando vi esse conceito pela primeira vez, fiquei bastante desconfiado: copiar o código para dentro do meu projeto não viraria uma bagunça?
Depois de usar na prática, percebi que a ideia é realmente inteligente.
O modelo das bibliotecas de componentes tradicionais funciona assim: instalar o pacote → importar componentes → configurar estilos por props e tema → começar a procurar desvios quando surge uma personalização — criar wrappers, sobrescrever estilos e escrever uma série de workarounds.
O shadcn/ui elimina esse processo. Precisa mudar alguma coisa? Basta alterar diretamente o código do componente. Como o código está no seu projeto, não existe “caixa-preta”.
1.2 Arquitetura técnica: um bolo de três camadas
A stack técnica do shadcn/ui tem basicamente três camadas:
Camada inferior: Radix UI
É um conjunto de primitives de componentes “sem estilo”. O que isso significa? Ele cuida apenas do comportamento e da acessibilidade, sem determinar a aparência. Em um componente Dialog, por exemplo, o Radix trata de:
- Estado de abertura e fechamento
- Gerenciamento de foco, incluindo navegação pela tecla Tab
- Atributos ARIA para compatibilidade com leitores de tela
- Interações por teclado, como fechar com Esc
E o estilo? Não há nenhum. É uma folha em branco.
Camada intermediária: Tailwind CSS
O Radix entrega o esqueleto, e o Tailwind fornece a aparência. Cada componente do shadcn/ui já vem estilizado com utility classes do Tailwind. Você pode alterar essas classes diretamente, sem precisar “sobrescrever” nada.
Camada superior: suas alterações
Essa é a essência do shadcn/ui. O código dos componentes está nas suas mãos, então você pode adaptá-lo como quiser. Não há limitações de API nem partes inacessíveis por props.
// Componente Button do shadcn/ui (o código fica no seu projeto)
const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
({ className, variant, size, ...props }, ref) => {
return (
<button
className={cn(buttonVariants({ variant, size, className }))}
ref={ref}
{...props}
/>
)
}
)
// Quer mudar? Basta editar diretamente
// Por exemplo, adicione uma animação personalizada
const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
({ className, variant, size, ...props }, ref) => {
return (
<button
className={cn(
buttonVariants({ variant, size, className }),
"transition-all duration-300 hover:scale-105" // Adicione diretamente
)}
ref={ref}
{...props}
/>
)
}
)
Viu? Você não precisa da prop sx nem de styled(); basta alterar a classe.
1.3 Vantagem de desempenho: os números não mentem
A vantagem de desempenho do shadcn/ui é realmente clara.
Consultei os dados no Bundlephobia:
| Biblioteca de componentes | Tamanho do bundle (minificado) | Após GZIP |
|---|---|---|
| shadcn/ui (sob demanda) | ~50-100 KB | ~15-30 KB |
| Pacote principal do Material-UI | 335,3 KB | 93,7 KB |
| Chakra UI | ~200 KB | ~60 KB |
Por que o shadcn/ui é tão pequeno? Porque apenas os componentes utilizados entram no bundle. O que você não usa simplesmente não é empacotado. Além disso, não existe o custo de runtime do CSS-in-JS: os estilos do Tailwind são processados durante o build.
Em um projeto real, migrei uma aplicação de médio porte do MUI para o shadcn/ui, e o bundle caiu de 1,2 MB para cerca de 600 KB. É uma diferença bastante perceptível.
1.4 O preço: a responsabilidade pela manutenção é sua
O shadcn/ui não é perfeito.
Se o código está nas suas mãos, a responsabilidade pela manutenção também está.
Quando o MUI lança uma nova versão que corrige algumas vulnerabilidades de segurança, basta executar npm update. E no shadcn/ui? Você precisa mesclar manualmente as alterações do upstream aos seus componentes.
Isso não é nem um problema enorme nem algo irrelevante. Em projetos pequenos, costuma ser tranquilo. Em projetos grandes, se muitos componentes tiverem sido modificados, incorporar as atualizações do upstream pode virar um trabalho braçal.
Outro ponto é que o shadcn/ui ainda não oferece aqueles “componentes avançados” — DataGrid, Charts e seletores de data complexos. Para esses casos, você precisa procurar bibliotecas de terceiros ou desenvolver a solução.
2. As três grandes bibliotecas tradicionais
O shadcn/ui é o novato, mas antes vamos olhar para as veteranas.
2.1 Material-UI: a principal escolha para empresas
O Material-UI, hoje chamado de MUI, surgiu em 2014 e é uma das bibliotecas de componentes mais tradicionais do ecossistema React.
Suas vantagens são claras:
Variedade incomparável de componentes. DataGrid, Charts, Date Picker, TreeView, Autocomplete… praticamente todo componente corporativo que você imaginar está disponível. Lembro de um projeto em que os componentes da versão Pro do MUI pouparam cerca de dois meses de desenvolvimento.
Design system maduro. A especificação Material Design do Google é consolidada, os arquivos do Figma são completos e a colaboração entre designers e desenvolvedores flui bem.
Ecossistema completo. Há muitas perguntas sobre MUI no Stack Overflow, então quase sempre é possível encontrar uma resposta. Também existem templates oficiais, marketplace de temas e muitos recursos.
Mas os problemas também são claros:
Bundle grande. O pacote principal tem 335 KB. Mesmo que você use apenas alguns componentes, a base continua ali. Tree-shaking pode amenizar o problema, mas não o resolve por completo.
Personalização difícil. Se o seu design for muito diferente do Material Design, o processo pode ser doloroso. Em um projeto, o layout criado pelo designer não tinha nada de Material. No fim, passamos uma semana escrevendo configurações de tema e sobrescritas de estilo. O código só aumentava e ficava cada vez mais difícil de manter.
O estilo Material fica “preso” ao produto. Mesmo depois de trocar todas as cores e fontes, é difícil eliminar totalmente a aparência do Material. O efeito ripple dos botões, as sombras dos cards, as animações dos campos… todos esses detalhes lembram ao usuário que aquilo é Material Design.
// Button do MUI: você controla pelo variant e pela prop color
<Button variant="contained" color="primary">
Clique em mim
</Button>
// Quer personalizar por completo? Você precisa fazer assim
<Button
sx={{
background: 'linear-gradient(45deg, #FE6B8B 30%, #FF8E53 90%)',
borderRadius: 3,
border: 0,
color: 'white',
height: 48,
padding: '0 30px',
boxShadow: '0 3px 5px 2px rgba(255, 105, 135, .3)',
}}
>
Botão personalizado
</Button>
2.2 Chakra UI: o rei da experiência de desenvolvimento
O Chakra UI chegou depois, mas sua experiência de desenvolvimento é realmente boa.
Sua ideia central: acessibilidade, ou a11y, é o padrão, não uma opção. Cada componente traz suporte a WAI-ARIA, navegação por teclado, gerenciamento de foco e compatibilidade com leitores de tela prontos para uso.
Desenvolvimento rápido. As style props do Chakra permitem escrever estilos como se fossem atributos HTML:
// Sintaxe do Chakra UI: os estilos ficam diretamente nas props
<Box bg="tomato" p={4} borderRadius="md" boxShadow="lg">
<Text fontSize="xl" fontWeight="bold" color="white">
Hello World
</Text>
</Box>
Essa abordagem é muito rápida para protótipos e praticamente dispensa arquivos CSS.
Sistema de temas simples. Você define um arquivo de configuração de tema e unifica cores, fontes e espaçamentos de toda a aplicação. O modo escuro também pode ser ativado com uma linha.
Mas também há limitações:
Só oferece suporte a React. Está usando Vue ou Svelte? Então o Chakra não serve para o seu projeto.
Há menos componentes. Em comparação com o MUI, o catálogo do Chakra ainda é menor. Para componentes complexos de visualização de dados, em especial, você precisa recorrer a bibliotecas de terceiros.
Estilos em runtime. O Chakra calcula estilos durante a execução, o que gera algum custo de desempenho. Isso é imperceptível na maioria dos projetos, mas pode virar um gargalo em cenários com atualizações de altíssima frequência, como dashboards de dados em tempo real.
2.3 Ant Design: padrão corporativo na China
O Ant Design foi criado pela Alibaba e é muito usado na China.
Conjunto completo de componentes corporativos. Tabelas, formulários, upload, controles em árvore… ele cobre quase todos os cenários de aplicações empresariais. O componente Table, em especial, tem uma quantidade impressionante de recursos: ordenação, filtros, paginação, colunas fixas, rolagem virtual e muito mais.
Bom suporte à internacionalização. A biblioteca inclui mais de vinte idiomas, o que facilita bastante projetos multilíngues.
Documentação em chinês muito acessível. Para equipes chinesas, essa é uma enorme vantagem. A documentação oficial é detalhada, há muitos tutoriais e quase sempre é possível encontrar respostas na comunidade chinesa.
Mas a personalização realmente deixa a desejar. A linguagem visual do Ant Design é muito marcante, e transformá-la em outro estilo não é fácil. Além disso, seu sistema de estilos usa Less, enquanto muitos projetos atuais migraram para Tailwind, o que torna a integração um pouco incômoda.
3. Comparação aprofundada em sete critérios
Falar apenas das características não basta. Vamos comparar cada ponto.
3.1 Comparação do tamanho do bundle
Dados de testes reais, usando Bundlephobia e projetos reais:
| Biblioteca de componentes | Bundle principal | Bundle em projeto real |
|---|---|---|
| shadcn/ui | Sem pacote principal, sob demanda | 150-200 KB |
| Material-UI | 335 KB | 300-400 KB |
| Chakra UI | 200 KB | 180-250 KB |
| Ant Design | 300 KB+ | 280-350 KB |
Por que o shadcn/ui é tão pequeno?
- Não há um pacote principal; apenas os componentes usados entram no bundle
- Não há runtime de CSS-in-JS
- Os estilos do Tailwind passam por purging no build, removendo tudo o que não é usado
Em um projeto de médio porte, ao migrar do MUI para o shadcn/ui, observei uma redução média de 40% a 50% no tamanho do bundle. Em dispositivos móveis, essa diferença é relevante.
3.2 Flexibilidade de personalização
Essa é a maior vantagem do shadcn/ui.
shadcn/ui: o código-fonte está nas suas mãos, e você altera o que quiser. Não há perguntas como “será que posso passar esta prop?” ou “como sobrescrevo aquele estilo?”. Basta editar diretamente o código do componente.
MUI: a personalização acontece pelo tema e pela prop sx. É uma solução poderosa, mas sempre parece que você está fazendo um desvio. Além disso, o próprio sistema de temas exige aprendizado.
Chakra UI: as style props são muito flexíveis, mas a personalização profunda ainda encontra limites. A implementação interna de alguns componentes é complexa demais para ser ajustada apenas com props.
Ant Design: tem a menor flexibilidade. Há variáveis de tema, mas o que pode ser alterado é limitado. Quer trocar completamente a linguagem visual? Prepare-se para reescrever muitos estilos.
3.3 Experiência de desenvolvimento
Curva de aprendizado:
- Chakra UI: a mais suave. A documentação é clara, a API é simples e uma leitura costuma bastar para começar.
- MUI: intermediária. Há muitos componentes e muitas APIs, o que exige algum tempo de familiarização.
- Ant Design: de intermediária a acentuada. Os componentes são complexos e têm muitas opções de configuração.
- shadcn/ui: a mais acentuada. É preciso entender os primitives do Radix, conhecer Tailwind e se acostumar a alterar diretamente o código dos componentes.
Qualidade da documentação:
- MUI: documentação muito detalhada, com muitos exemplos e referência completa da API.
- Chakra UI: documentação simples e clara, com exemplos práticos.
- Ant Design: boa documentação em chinês e especificações de design.
- shadcn/ui: a documentação continua evoluindo, mas ainda é um pouco menor que a das outras opções.
Suporte da comunidade:
- MUI: a maior comunidade, o maior número de perguntas no Stack Overflow e muitos recursos de terceiros.
- Ant Design: comunidade ativa na China e bastante conteúdo em chinês.
- Chakra UI: comunidade de tamanho médio, mas em rápido crescimento.
- shadcn/ui: comunidade nova, porém crescendo depressa; o número de stars no GitHub já está próximo ao do MUI.
3.4 Acessibilidade
Esse aspecto é realmente importante e não deve ser ignorado.
Chakra UI: tem a melhor implementação de acessibilidade. Todos os componentes incluem suporte a WAI-ARIA, boa navegação por teclado e compatibilidade com leitores de tela. Se o seu projeto tiver requisitos rigorosos de a11y, o Chakra é a primeira escolha.
shadcn/ui: por se basear no Radix UI, também oferece ótima acessibilidade. Os primitives do Radix foram projetados para a11y, com atributos ARIA e gerenciamento de foco muito bem resolvidos.
MUI: também apresenta boa acessibilidade, e a maioria dos componentes segue as especificações WAI-ARIA.
Ant Design: fica em um nível intermediário. A acessibilidade dos componentes básicos é razoável, mas a navegação por teclado em alguns componentes complexos ainda não é completa.
3.5 Variedade de componentes
MUI: oferece o maior catálogo. Há componentes básicos e avançados, como DataGrid, Charts, Date Picker e Tree View. Componentes Pro como x-grid e x-date-pickers são pagos, mas têm muitos recursos.
Ant Design: também é muito completo. Traz componentes corporativos como Table, Form e Upload, suficientes para a maioria dos casos.
Chakra UI: fica no meio. Tem todos os componentes básicos, mas poucos avançados. Quando necessário, é preciso buscar uma biblioteca de terceiros.
shadcn/ui: tem o menor catálogo. Atualmente oferece principalmente componentes básicos, como Button, Input, Dialog e Table, sem DataGrid ou Charts. A comunidade vem preenchendo essa lacuna com algumas bibliotecas de extensão baseadas em shadcn.
3.6 Manutenção de longo prazo
É preciso olhar para a questão por dois ângulos:
Atualização automática versus atualização manual:
- MUI / Chakra / Ant Design:
npm updatefornece novos recursos e correções de bugs. - shadcn/ui: você precisa mesclar manualmente as atualizações do upstream.
Controle versus conveniência:
- Bibliotecas tradicionais: oferecem mais conveniência, mas controle limitado. Quando surge um bug ou uma necessidade de personalização, é preciso esperar uma correção oficial ou criar seu próprio fork.
- shadcn/ui: oferece o máximo de controle, mas a manutenção fica por sua conta. A vantagem é poder corrigir um bug sem esperar pela equipe oficial.
Custo de migração:
Migrar de uma biblioteca de componentes para outra nunca é barato. Por isso, vale escolher com cuidado, pois a tendência é manter a decisão por bastante tempo.
3.7 Comparação de cenários de uso
| Cenário | Recomendação | Motivo |
|---|---|---|
| Design system totalmente personalizado | shadcn/ui | O código-fonte está nas suas mãos e pode ser alterado à vontade |
| Sistema administrativo corporativo | MUI ou Ant Design | Muitos componentes prontos para uso |
| Protótipo rápido / MVP | Chakra UI | Desenvolvimento rápido e documentação clara |
| Dispositivos móveis / desempenho crítico | shadcn/ui | Menor tamanho de bundle |
| Requisitos elevados de acessibilidade | Chakra UI ou shadcn/ui | a11y bem implementada por padrão |
| Designers usam Figma | MUI | Há um Figma UI Kit oficial |
4. Framework para tomar a decisão
Depois de tudo isso, qual escolher? Resumi a decisão em um processo simples:
4.1 Primeiro, faça três perguntas
Pergunta 1: quão “exclusivo” é o seu design?
- O design é totalmente personalizado e não se parece com nenhum sistema existente → shadcn/ui
- O design se aproxima do Material Design → MUI
- O design é simples e moderno, sem necessidade de personalização especial → Chakra UI
- O design tem estilo corporativo, com muitas tabelas e formulários → Ant Design
Pergunta 2: qual é o tamanho do projeto?
- Projeto pequeno / MVP → Chakra UI ou shadcn/ui
- Aplicação corporativa média ou grande → MUI ou Ant Design
- Desempenho crítico, como em dispositivos móveis ou tráfego elevado → shadcn/ui
Pergunta 3: com o que a equipe está familiarizada?
- A equipe conhece Tailwind → shadcn/ui se encaixa naturalmente
- A equipe conhece Material Design → MUI
- A equipe prioriza velocidade de desenvolvimento → Chakra UI
- A equipe atua em uma empresa chinesa → Ant Design
4.2 Minha recomendação pessoal
Para um projeto novo:
Hoje, minha escolha padrão é o shadcn/ui.
Motivos:
- Tailwind já virou padrão, e o shadcn/ui se integra perfeitamente a ele
- Tem o melhor desempenho e o menor bundle
- Oferece controle total, sem “caixa-preta”
- A manutenção de longo prazo fica mais previsível, pois o código está nas suas mãos
Exceções:
- Se o projeto precisar de tabelas e gráficos complexos, e a equipe não tiver tempo para buscar bibliotecas de terceiros → MUI
- Se o projeto tiver requisitos rigorosos de acessibilidade, e a equipe não conhecer bem a11y → Chakra UI
- Se for um grande projeto corporativo na China que exige documentação em chinês e suporte local → Ant Design
Para um projeto antigo:
O custo da migração costuma ser alto. A menos que exista um motivo claro, como problemas de desempenho, dificuldade de personalização ou mudança no design system, não recomendo trocar. Mas, se a mudança for realmente necessária, o custo de migração para shadcn/ui é relativamente menor, porque os componentes são independentes e podem ser substituídos um a um.
5. Migração na prática: do MUI para o shadcn/ui
Se você decidiu migrar, aqui vão algumas experiências práticas.
5.1 Etapas da migração
Etapa 1: avalie os componentes atuais
Liste os componentes do MUI que você usa hoje:
- Componentes básicos, como Button, Input e Select → existem no shadcn e podem ser substituídos diretamente
- Componentes avançados, como DataGrid e Charts → exigem uma biblioteca de terceiros ou uma implementação própria
Etapa 2: crie um mapa de substituição
// Mapa de componentes
const componentMap = {
'Button': 'Button', // Correspondência direta
'TextField': 'Input', // Nome diferente, função semelhante
'Dialog': 'Dialog', // Correspondência direta
'Select': 'Select', // Correspondência direta
'Table': 'Table', // shadcn tem Table básica, sem recursos avançados
'DataGrid': '???' // É preciso encontrar uma alternativa, como TanStack Table
}
Etapa 3: substitua um componente de cada vez
Não troque tudo de uma vez. Comece por uma página e, depois de validar que está tudo certo, amplie a migração.
Etapa 4: migre os estilos
Variáveis de tema do MUI → configuração do Tailwind
sx prop → classes do Tailwind
// Sintaxe do MUI
<Button sx={{ mt: 2, mb: 1, backgroundColor: 'primary.main' }}>
Enviar
</Button>
// Sintaxe do shadcn/ui
<Button className="mt-8 mb-4 bg-primary">
Enviar
</Button>
5.2 Pontos de atenção
-
Os sistemas de estilo são completamente diferentes: o MUI usa theme object + sx prop, enquanto o shadcn usa classes do Tailwind. Durante a migração, é preciso “traduzir” os estilos.
-
Componentes avançados precisam de alternativas: o shadcn não inclui um DataGrid pronto para uso; recomendo o TanStack Table. Para gráficos, você pode usar Recharts ou Chart.js.
-
Algumas animações podem desaparecer: o efeito ripple e as transições do MUI são incorporados. No shadcn, é preciso adicioná-los. Você pode usar
transitione as classesanimate-do Tailwind. -
Teste, teste e teste! Depois da migração, teste todas as interações, principalmente componentes complexos, como formulários e modais.
5.3 Referência de custo da migração
Com base na minha experiência:
- Projeto pequeno, com até 10 páginas: 1 a 2 semanas
- Projeto médio, com 10 a 30 páginas: 2 a 4 semanas
- Projeto grande, com mais de 30 páginas: 4 a 8 semanas, dependendo da complexidade dos componentes avançados
6. Conclusão e perspectivas
Depois de tudo isso, o ponto que realmente quero transmitir é:
Não existe a melhor biblioteca de componentes; existe a biblioteca mais adequada ao seu projeto.
O surgimento do shadcn/ui trouxe uma nova opção: em vez de “usar uma biblioteca”, você passa a “ser dono do código”. Para equipes que valorizam desempenho e personalização, isso é bastante atraente.
MUI, Chakra UI e Ant Design também têm seus próprios pontos fortes. A variedade de componentes e a maturidade do ecossistema do MUI, a experiência de desenvolvimento e a acessibilidade do Chakra, além dos recursos corporativos e do suporte à localização do Ant Design são vantagens concretas.
A chave da escolha é: entender suas necessidades, conhecer as características de cada biblioteca e tomar a decisão mais adequada ao projeto atual.
Por fim, se você ainda estiver em dúvida, tenho uma sugestão:
Experimente o shadcn/ui.
Sério. Depois de testar, você perceberá que a lógica é completamente diferente da de uma biblioteca tradicional. A sensação de ter “o código nas minhas mãos” é muito boa.
Recursos de referência
Documentação oficial:
- Documentação oficial do shadcn/ui
- Documentação oficial do Material-UI (MUI)
- Documentação oficial do Chakra UI
- Documentação oficial do Ant Design
Artigos comparativos:
Discussões da comunidade:
Dados do GitHub (setembro de 2025):
- shadcn/ui: ~94,6 mil stars
- Material-UI: ~96,6 mil stars
- Chakra UI: ~39,7 mil stars
- Ant Design: ~96,0 mil stars
Este artigo foi escrito com base em dados e experiência prática de setembro de 2025 a março de 2026. Como as bibliotecas de componentes evoluem rapidamente, consulte a documentação mais recente para obter informações atualizadas.
FAQ
Qual é a maior diferença entre shadcn/ui e as bibliotecas de componentes tradicionais?
Para quais projetos o shadcn/ui é indicado?
• Você precisa de um design system totalmente personalizado
• A equipe conhece Tailwind CSS
• Desempenho e tamanho do bundle são importantes
• O projeto usa frameworks modernos, como Next.js ou Remix
• É um projeto de longa duração e você precisa de controle total sobre o código
Quando devo escolher o Material-UI?
• Sistemas administrativos corporativos
• Necessidade de componentes avançados, como DataGrid, Charts e Date Picker
• Equipe familiarizada com Material Design
• Prazo apertado e necessidade de entrega rápida
• Colaboração próxima com designers, aproveitando o Figma UI Kit oficial
É caro migrar do MUI para o shadcn/ui?
• Projeto pequeno, com até 10 páginas: 1 a 2 semanas
• Projeto médio, com 10 a 30 páginas: 2 a 4 semanas
• Projeto grande, com mais de 30 páginas: 4 a 8 semanas
A maior parte do trabalho está na migração do sistema de estilos, de sx prop para classes do Tailwind, e na integração de alternativas para componentes avançados.
Quais são as desvantagens do shadcn/ui?
• As atualizações precisam ser mantidas manualmente, sem receber novos recursos automaticamente com npm update
• Faltam componentes avançados; para DataGrid e Charts, é preciso procurar bibliotecas de terceiros
• A curva de aprendizado é mais acentuada, pois é preciso entender os primitives do Radix e o Tailwind
• A comunidade e a documentação ainda são um pouco menores do que as do MUI
Qual biblioteca de componentes oferece a melhor acessibilidade?
17 min de leitura · Publicado em: 26 mar 2026 · Atualizado em: 4 set 2026
Tailwind e shadcn/ui na prática
Se você chegou pela busca, o caminho mais rápido é ir para o post anterior ou próximo desta série.
Anterior
Tailwind CSS v4: novidades, desempenho, configuração e guia de migração
Uma análise detalhada do ganho de desempenho do motor Oxide no Tailwind CSS v4, da configuração CSS-first, da instalação simplificada e das breaking changes, com checklist e passos completos de migração
Parte 2 de 14
Próximo
Guia completo para instalar e personalizar temas do shadcn/ui (com variáveis CSS)
Aprenda a instalar e configurar o shadcn/ui e a personalizar temas com variáveis CSS, cores OKLCH e modo escuro. Domine boas práticas para criar uma interface alinhada à sua marca e faça a configuração inicial em 5 minutos.
Parte 4 de 14



Comentários
Entre com GitHub para comentar