TL;DR
Evite o uso de tokens personalizados comoh-[15px] ou p-[3px]. Prefira os
tokens do Tailwind, como h-8 e p-2. Além disso, evite especificar cores nos
tokens (por exemplo, bg-[#fd429a]). Em vez disso, utilize cores de tema para
uma melhor manutenção.
Introdução
Este guia explora as melhores práticas para alcançar uma performance ideal no front-end com o Tailwind CSS na Deco. Vamos mergulhar no processo de geração do Tailwind CSS, examinar como os tokens inline afetam as métricas do Web Vitals e estabelecer regras simples para manter uma pontuação de alta performance.Compreendendo o Processo de Geração do Tailwind CSS
O framework da Deco permite a integração perfeita dos tokens do TailwindCSS em qualquer componente JSX, aplicando estilos sem configuração adicional. Embora isso seja conveniente para iniciantes, entender o processo subjacente é crucial para otimização de desempenho. Sempre que são feitas alterações no código do seu site, o processo de “geração do Tailwind” examina todos os arquivos.tsx em sua base de código. Em seguida,
extrai os tokens CSS, mesclando-os em um único arquivo styles.css. Este
arquivo é então enviado ao navegador, estilizando seus componentes. Esse
processo se repete sempre que ocorrem alterações no código.
No entanto, a consequência é um arquivo styles.css maior do que o necessário,
contendo estilos para todos os componentes, impactando as métricas de
desempenho. Considere um cenário com uma página inicial (Home.tsx) e uma
página de produto (Product.tsx):
styles.css:
p-4 não seja usado na página inicial, ele está incluído em
styles.css, aumentando a carga CSS e afetando as métricas do Web Vitals (FCP).
No exemplo anterior, tanto os tokens flex quanto justify-center são
reutilizados. Em projetos maiores, essa reutilização de classes tende a crescer.
A reusabilidade é fundamental para ter um projeto Tailwind performático. No
entanto, os tokens inline podem quebrar essa tendência. Exemplos de tokens
inline incluem p-[3px], h-[4rem] e bg-[#fdb43a]. Essas classes têm pouca
probabilidade de serem reutilizadas, levando a um aumento no tamanho do
styles.css e prejudicando os Core Web Vitals.
Para evitar a sintaxe inline ao replicar estilos, siga uma regra simples: use
tokens próximos. Por exemplo:
p-[3px]->p-2h-[4rem]->p-8bg-[#fdb43a]->bg-primary