Este artículo recorre, capa por capa, las dos décadas de historia que separan un index.html subido por FTP en 2008 del ecosistema actual de frontend, dominado por frameworks declarativos, transpiladores y herramientas escritas en Rust. La tesis central es que ninguna de esas herramientas surgió por capricho: cada una es tejido de cicatriz sobre una herida real que el desarrollo web fue sufriendo con el tiempo.
El recorrido empieza con la llegada de AJAX y jQuery, que resolvieron las diferencias entre navegadores y trajeron la carga asíncrona de datos. A medida que las aplicaciones crecieron, la sincronización manual entre el estado en JavaScript y el DOM se volvió inmanejable, lo que abrió paso a la interfaz declarativa y a los componentes. React, Vue, Angular, Svelte y Solid son las mil flores que brotaron de esa solución, y convergen hoy en el concepto de signal: un valor que sabe quién depende de él.
En paralelo, el artículo explica por qué existe «el build»: la falta de un sistema oficial de módulos en JavaScript obligó a inventar CommonJS y ES Modules, mientras que la necesidad de ejecutar sintaxis moderna en navegadores antiguos trajo transpiladores como Babel y empaquetadores como webpack. El precio fue el famoso node_modules, un directorio que puede contener cientos de miles de archivos en un proyecto vacío.
La siguiente oleada de dolor llegó por la lentitud de esas propias herramientas. Reescribirlas en Go y Rust (esbuild, SWC, Vite, Rolldown, pnpm, Bun)解决了 el problema multiplicando la velocidad por 10 o por 100, y ha terminado consolidando la pila bajo un mismo actor, VoidZero, recientemente adquirida por Cloudflare. Frente a todo ese aparato, una corriente minoritaria —htmx, Alpine.js, Hotwire— defiende que el error original fue abandonar el servidor y propone volver a enviar HTML por la red. El texto termina anticipando que el frontend de 2026 se parece, sospechosamente, al archivo FTP de 2008.
