Voltar
Tamagui 3 traz runtime de estilos nativo em C++, React Strict DOM e frontend Tailwind

Tamagui 3 chega com runtime de estilos nativo em C++, React Strict DOM e frontend Tailwind

Aprofundamento CEVIU

Aprofundamento

O Tamagui 3 tira parte do estilo do caminho de renderização do React. O novo @tamagui/native-registry guarda as atualizações de tema em um pequeno registro em C++, liga as views nativas elegíveis a ele e aplica as mudanças direto pelo Fabric, sem passar os componentes de novo pelo render do React. É uma beta opt-in para a New Architecture do React Native. Exige React Native 0.82 ou mais novo, instalação do pacote com Nitro Modules, a flag experimental.nativeFastPath no compilador, registro do engine na inicialização e rebuild do app.

O compilador nativo também ficou mais esperto. Ele trata condições lógicas, ternários aninhados, várias props condicionais independentes e spreads estaticamente avaliáveis, além de resolver variantes de styled.dynamic() e cadeias .resolve() quando as entradas são conhecidas em build. Um valor dinâmico, como uma opacity que muda, não obriga mais o componente inteiro a ficar no caminho de runtime completo. Na web, o mesmo compilador extrai CSS atômico e achata componentes elegíveis para elementos DOM.

Na sintaxe, entram as flat style props: valor base e condições ficam na mesma propriedade, com modificadores encadeados como dark:sm:hover:, em string ou objeto. React Strict DOM e o frontend Tailwind são escolhidos por import, e há um language server em Rust para completions e diagnósticos em qualquer editor. A migração pede cuidado: saem focusable, fullscreen, o static styleable, os hooks useProps e usePropsAndStyle, os tokens $true e o stepping de tokens. O config v6 renomeia chaves de tema para kebab case, e há um codemod de flat-values com modo report.

Por que isso importa

Para quem mantém app React Native com muito tema dinâmico, o ganho potencial está em trocar de tema sem re-render em cascata. Como o runtime é beta, vale testar num app secundário antes de apostar em produção. Já as breaking changes são certas: reserve tempo de migração, rode o codemod em modo report primeiro e revise à mão o que ele não prova seguro.

Perguntas frequentes

O runtime nativo em C++ do Tamagui 3 já é estável?

Não. Ele é uma beta opt-in para a New Architecture do React Native. Precisa de React Native 0.82 ou mais novo, @tamagui/native-registry com Nitro Modules e a flag experimental.nativeFastPath no compilador.

O que são flat style props no Tamagui 3?

É a forma de escrever o valor base e todas as condições de uma propriedade num único valor. Dá para encadear modificadores como dark:sm:hover: e combinar tema, breakpoint e interação. Existem a forma string e a forma objeto, ambas ligadas por padrão.

O que quebra ao migrar para o Tamagui 3?

Saem APIs como focusable, fullscreen, o static styleable, os hooks useProps e usePropsAndStyle e os tokens $true. O stepping de tokens também foi removido. O guia de upgrade traz os comandos e há um codemod de flat-values.

Dá para usar Tailwind no Tamagui 3?

Sim, pelo frontend Tailwind, escolhido por import. As classes vão em className, e a web extrai CSS atômico enquanto iOS e Android resolvem para estilos do React Native. Componentes importados de tamagui mantêm o frontend de props normal.

Fontes

Avalie este artigo:
Categoria
CEVIU Web Dev
Publicado
26 de outubro de 2026
Editoria
CEVIU Web Dev

Quer receber mais sobre CEVIU Web Dev?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser