Por qué dejé de usar React para proyectos simples
React fue mi pan de cada día durante años. Lo metía en todo. Casi por reflejo. Hasta que me detuve a pensar: ¿de verdad necesito un runtime, un build con mil pasos y medio mega de JavaScript solo para mostrar texto, una imagen y un par de botones?
Spoiler: no.
¿Es culpa de React?
No. React es una herramienta brutal. Pero usar React para una landing es como usar un lanzallamas para prender una vela. Funciona, pero… ¿para qué?
¿Qué tipo de proyectos?
Sitios estáticos
Landings, blogs, portfolios, documentación. Cosas donde el contenido es plano o cambia una vez cada tanto. React ahí es un exceso. Literal.
Admins CRUD livianos
Incluso varios paneles internos que solo muestran tablas, formularios y botones pueden resolverse con HTML, fetch y algo de JS vanilla. No necesitás JSX ni reducers para hacer un POST
.
¿Qué estoy usando ahora?
Astro
Renderiza todo en el build. Cero JavaScript si no lo pedís. Markdown para contenido. Ideal para sitios rápidos y fáciles de mantener. Y sí, Lighthouse te sonríe.
HTMX / Alpine.js
Para interactividad sin dramas. HTMX me deja hacer cosas con HTML que antes requerían medio framework. Alpine es como tener mini-componentes reactivos sin romper la cabeza.
Tailwind CSS
No me interesa la polémica. Tailwind me deja maquetar rápido, sin repetir CSS y sin tener que inventar nombres de clases que después olvido.
Beneficios inmediatos
- Carga rápida, sin frameworks pesados
- Menos dependencias, menos puntos de falla
- Deploys simples, hasta en un hosting barato
- Código más mantenible, más legible
¿Y React?
Sí, pero cuando vale la pena
- Dashboards con lógica real (no “solo una tabla”)
- Apps que tienen mucho estado compartido, condicional, sincronización, etc.
- Cuando el ecosistema (Next, Zustand, Vite, etc.) realmente suma valor
Conclusión
No es hate. Es criterio. React sigue siendo una bestia, pero no es una religión. Si tu proyecto no lo necesita, dejalo en paz.
Volver a lo simple no es retroceder. Es dejar de complicarte al pedo.