Modos dark/light en Tailwind

Cuando trabajo con plantillas multi tema, mantener los colores coherentes es un reto entre los distintos components. Tras varías experiencias con inconsistencias, encontré una solución fácil y escalable: usar addBase
en TailwindCSS para definir colores en :root
. Es simple, elegante y hace la vida más fácil.
Colores y temas bajo control
plugins: [
plugin(function ({ addBase }) {
addBase({
":root": {
"--color-background": "#fefefe",
"--color-foreground": "#0f0f0f",
},
".dark": {
"--color-background": "#1d1e26",
"--color-foreground": "#e8eaf0",
},
});
});
]
Con addBase
en tailwind.config.mjs
, centralizo mi paleta en :root
y gestiono temas como light
y dark
sin esfuerzo. Un cambio en una variable y todo se actualiza al instante, no más buscar y reemplazar por mil archivos. Además, alternar temas con una clase como .dark
es pan comido, perfecto para proyectos que necesitan flexibilidad sin complicaciones.
Rendimiento, SEO y mantenimiento en un solo truco
Usar .mjs
con addBase
no solo es práctico, sino que optimiza. El CSS generado es ligero, los builds son más rápidos y los navegadores lo procesan fácilmente. Para proyectos grandes, o pequeños que pueden escalar es muy práctico: menos inconsistencias, menos tiempo perdido buscando valores sueltos, y un código que cualquier dev del equipo entiende de un vistazo.
Conclusión
AddBase
en :root
con .mjs
me da consistencia, rendimiento y flexibilidad para temas dinámicos. Es SEO-friendly, simplifica el mantenimiento y hace que mis plantillas sean robustas. Si buscas código mantenible y una UX optimizada, este enfoque es imprescindible. ¡Pruébalo y dile adiós al caos de colores! 🚀