De todos modos, tuvimos que hacer eso, y parte de las razones por las que elegimos reescribir Nuxt desde cero fue que había muchos cambios que estaban ocurriendo en el ecosistema. Así que inmediatamente para nosotros, estaba el hecho de que Vue había tenido un lanzamiento importante. Había esta nueva versión de Vue, Vue 3, que cambió cómo funcionaba la Reactividad para Nuxt en sí mismo. También hubo un gran cambio. Nos movimos de webpack 4 a 5, y luego durante todo el proceso de construcción de Nuxt, Evan Yu, quien originalmente creó Vue, también creó algo llamado Vite, que era maravilloso pero también extremadamente frustrante porque significaba que teníamos que re-arquitectar completamente Nuxt para trabajar con él. Quiero decir, no teníamos que hacerlo, pero la experiencia del desarrollador era tan increíble.
Y fue una oportunidad para que reestructuráramos Nuxt para ser agnóstico al empaquetador, así que lo construimos para que pudiera trabajar tanto con webpack como con Vite, y desde entonces hemos añadido RSPack, y podríamos añadir más. O podrías, es enchufable, cualquiera puede proporcionar el suyo propio. Pero había otras cosas que estaban sucediendo también, alrededor de ese tiempo en el ecosistema. Así que hubo un movimiento de ese tipo de servidor de larga duración que se inicia una vez y toma solicitudes y simplemente dura hasta que necesitas, no sé, iniciar otro contenedor o eliminarlo y reemplazarlo con un nuevo despliegue, a cosas como los trabajadores de Cloudflow, que tenían límites de tamaño muy estrictos, o lambdas, que tenían cosas como restricciones de tamaño, cuanto más grande es tu archivo zip, más tiempo lleva descomprimirlo, y donde cosas como los inicios en frío eran increíblemente importantes en términos de devolver una buena respuesta al usuario final.
Y otras cosas como Deno, Bun, un movimiento hacia ESM, y más. Y así, a partir de eso, construimos un motor de servidor para Nuxt, que es totalmente diferente de lo que teníamos antes, y lo llamamos originalmente Nuxt Sigma, luego lo llamamos Nuxt Nitro, y finalmente decidimos eliminar el Nuxt y hacerlo un servidor genérico que cualquiera podría usar para construir servidores de alto rendimiento. Y queríamos diseñarlo de tal manera que la gente pudiera construir su propio meta-framework sobre él, y eso ha sucedido, así que personas como Brandon Roberts han construido un increíble meta-framework y él usa Nitro bajo el capó. Igualmente, frameworks como SolidStart o TanStackStart también trabajan con Nitro para que sea el servidor para ellos también. Y esa es la mejor parte del código abierto, ¿verdad?
Comments