HextaUI e shadcn/ui
O HextaUI não substitui o shadcn/ui. É um registry que você adiciona a um projeto shadcn/ui, com a mesma CLI, os mesmos nomes de componentes e os mesmos tokens de tema. Esta página explica o que ele acrescenta e quando você não precisa dele.
A resposta curta
Use o shadcn/ui quando quiser um ponto de partida limpo e pretender escrever você mesmo os estados de carregamento, erro e vazio. Adicione o HextaUI quando quiser esses estados, o movimento e os detalhes de acessibilidade já prontos, ou quando precisar de um componente que o shadcn/ui não oferece. Você pode misturar os dois em um projeto, um componente por vez.
O que continua igual
- Você instala com a shadcn CLI, e o código-fonte é copiado para o seu projeto. Nada fica preso dentro de um pacote.
- Os componentes mantêm os nomes, as partes e as props do shadcn/ui, então
Dialog,DialogTriggereDialogContentfuncionam como você espera. - A estilização usa os mesmos tokens de tema, como
--background,--primarye--radius, com Tailwind CSS v4. - Os arquivos vão para
@/components/ui, ao lado dos componentes do shadcn/ui que você já tem.
Adicionar um componente é assim:
pnpm dlx shadcn@latest add https://hextaui.com/r/button.jsonO que o HextaUI acrescenta
- Estados prontos. Os botões mostram feedback de pendente, sucesso e erro a partir da promise que você retorna. Os switches salvam e revertem. Os inputs tremem quando são inválidos. Os spinners esperam antes de aparecer para que tarefas rápidas não pisquem.
- Movimento interrompível. As animações compartilham um único conjunto de curvas de easing e durações, podem ser revertidas no meio e viram um fade quando o movimento reduzido está ativado.
- Toque, da direita para a esquerda e alto contraste. As áreas de toque aumentam em telas sensíveis ao toque, os inputs de texto ficam em 16px para o iOS não dar zoom, os layouts são espelhados em idiomas da direita para a esquerda e os anéis de foco continuam visíveis no modo de alto contraste do Windows.
- Componentes que não estão na lista do shadcn/ui no momento da escrita (outubro de 2026), como Tree, Video player, Questionnaire, Number flow, Shimmer e Scroll fade.
- 9 hooks e 5 utilitários que você pode instalar separadamente, como useButtonFeedback e useDelayedLoading.
- 22 blocos para produtos de IA, como thread de chat, chamadas de ferramentas e modo de voz. Fazem parte do HextaUI Pro, que é pago, e o Prompt Input é gratuito.
- Documentação escrita também para agentes. Cada página tem uma versão em Markdown, e há um servidor MCP que seu assistente pode consultar.
Quando só o shadcn/ui é a melhor escolha
- Você quer primitivos do Radix. Os componentes do HextaUI são construídos apenas sobre o Base UI.
- Você quer o menor componente possível e prefere adicionar estados e movimento por conta própria. Os componentes do HextaUI têm mais código porque tratam mais casos.
- Você depende dos blocos, gráficos e temas do shadcn/ui, ou dos ports da comunidade para Vue e Svelte. O HextaUI é só para React.
- Você precisa da maior comunidade e do maior número de exemplos de terceiros. O shadcn/ui tem muito mais dos dois.
Usando os dois juntos
Como os nomes e os tokens são os mesmos, você pode substituir um componente por vez. Execute o comando add com --overwrite para trocar um componente do shadcn/ui pela versão do HextaUI e revise o diff no git antes de mantê-lo. Os componentes que você não substituir continuam funcionando. O HextaUI tem 65 componentes, e Instalação explica os tokens de tema que eles esperam.