Vite y el Futuro de las Herramientas de JavaScript

This ad is not shown to multipass and full ticket holders
React Summit US
React Summit US 2025
November 18 - 21, 2025
New York, US & Online
The biggest React conference in the US
Learn More
In partnership with Focus Reactive
Upcoming event
React Summit US 2025
React Summit US 2025
November 18 - 21, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

En VoidZero, hemos estado trabajando arduamente en construir la base para una cadena de herramientas unificada para JavaScript. Durante el último año y medio, hemos reconstruido todo dentro de Vite desde cero, ahora funcionando en una cadena de herramientas impulsada por Rust que contiene OXC y Rolldown. En esta charla, discutiremos el porqué, las implicaciones y la visión futura de todo este trabajo.

This talk has been presented at JSNation 2025, check out the latest edition of this JavaScript Conference.

Evan You
Evan You
23 min
16 Jun, 2025

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Evan Yeo discute el crecimiento de Vite, los desafíos con dependencias como ES Build y Rollup, y la creación del empaquetador Rolldown. El ecosistema de JavaScript enfrenta fragmentación, pero la empresa apunta a una pila de JavaScript unificada. Rust es elegido para el desarrollo de bajo nivel, mientras que JavaScript y TypeScript para las APIs de alto nivel. Roldown ofrece características avanzadas de empaquetado, superando a las herramientas existentes. La integración con Vite lleva a optimizaciones personalizadas y mejoras significativas en la velocidad. El desarrollo de Vite+ se centra en crear un conjunto de herramientas integral. VitePlus integra TS-down para empaquetado de bibliotecas, ViteTest para pruebas y OX-Lint para linting. Los planes futuros incluyen conciencia de monorepo, orquestación de compilación y características similares a las de un framework.

1. Analysis of Vite and JavaScript Tooling

Short description:

Evan Yeo discute el crecimiento de Vite, los desafíos con dependencias como ES Build, Rollup, y la decisión de crear el empaquetador Rolldown. El ecosistema de JavaScript enfrenta fragmentación en analizadores, transformadores y más, causando fatiga de decisión pero también fomentando la innovación.

Entonces, hola a todos. Mi nombre es Evan Yeo, y estoy aquí para hablar sobre Vite y el futuro de las herramientas de JavaScript. Bien. Entonces, muchos de ustedes probablemente han oído hablar de Vite. Y así, en los últimos años, ha estado creciendo muy rápido. Y ahora estamos viendo 29 millones de descargas semanales de NPM y más de 1.1 mil colaboradores en GitHub. Y tenemos un vasto ecosistema de herramientas y frameworks construidos sobre Vite, incluyendo probablemente algunas de las herramientas más familiares que han estado usando. Y tenemos empresas que usan Vite o frameworks basados en Vite en producción, incluyendo algunos de los nombres más grandes que hemos escuchado. Y hoy, creo que ya no es una exageración decir que Vite se ha convertido en la capa de infraestructura compartida para la próxima generación de aplicaciones web.

Eso también es mucha responsabilidad. Así que, siempre hemos estado pensando en lo que podemos hacer para que Vite cumpla mejor este papel. Y llegamos a la conclusión de que Vite está lejos de ser perfecto en su estado actual. Así que, hemos estado trabajando arduamente en encontrar qué podemos hacer para mejorarlo desde cero. El mayor problema que vimos anteriormente era que Vite todavía depende de diferentes dependencias con deberes superpuestos. Vite, como herramienta de alto nivel, envuelve un montón de dependencias de terceros, incluyendo ES Build, Rollup. Y a veces, los usuarios también dependen de S3C para la transformación.

Entonces, el problema con esto es que muchas de estas herramientas tienen deberes superpuestos. Están escritas en diferentes lenguajes. Hay muchos problemas de eficiencia cuando pasas datos de un lado a otro entre estas herramientas, y todas tienen un comportamiento ligeramente diferente cuando se trata de empaquetar una transformación. Así que, decidimos construir un empaquetador por nosotros mismos para resolver este problema. Estamos construyendo un empaquetador llamado Rolldown que está diseñado específicamente para Vite para cumplir sus objetivos.

2. Fragmentation in the JavaScript Ecosystem

Short description:

El orador discute la fragmentación en el ecosistema de JavaScript, la necesidad de una cadena de herramientas unificada y la misión de la empresa de proporcionar una pila de JavaScript coherente. La empresa trabaja en piezas de código abierto como Vite, Vitest, Rodan y RxC, con el objetivo de una experiencia unificada en el desarrollo de JavaScript.

Pero mientras estamos trabajando en Rolldown, comenzamos a profundizar en la pila. Nos dimos cuenta de que para construir un empaquetador, necesitamos también elegir qué analizador usamos, qué AST usamos, qué transformador usamos, qué minificador usamos. Y cuando te adentras en el tema, te das cuenta de que el desafío que enfrenta Vite es realmente un reflejo del ecosistema de JavaScript en general. Así que, si miramos el empaquetador y observamos todas las dependencias de bajo nivel que un empaquetador necesita, nos damos cuenta de que el ecosistema de JS realmente sufre de fragmentación en cada capa. Así que, para analizadores, transformadores, ejecutores de pruebas, enlazadores, formateadores, todas las cosas que usamos en cada capa para cada tarea, hay tantas soluciones diferentes. Y esto solo lleva a mucha fatiga de decisión. Y para el usuario promedio que recién está comenzando en el desarrollo de JavaScript, probablemente no sea la tarea más fácil decidir cuál usar.

Así que, esto no es del todo malo, ¿verdad? El ecosistema de JavaScript fue probablemente uno de los más vibrantes, los más activos. Y esta especie de falta de guía central resulta en una libertad para explorar. Y la abundancia de opciones fue crítica para el ecosistema en los primeros días. Estas soluciones son las que nos ayudaron a llegar a donde estamos. Estamos construyendo aplicaciones de JavaScript más ambiciosas que nunca, y estas son las herramientas que nos ayudaron a llegar aquí. Pero a medida que el lenguaje madura, a medida que llegamos a mucho más consenso y convenciones sobre algunos de estos problemas, esto ha llevado a un impuesto de complejidad para todos. Así que, creo que ahora es un momento en el que JavaScript merece una cadena de herramientas unificada.

Así que, hemos estado trabajando arduamente en este objetivo en VoiZero, que es una empresa que he fundado. Y la misión de la empresa es realmente construir una cadena de herramientas de JavaScript unificada para dar a los usuarios una pila más coherente, una experiencia coherente cuando queremos simplemente entrar en ello y dejar de pensar en elegir y seleccionar un montón de soluciones diferentes. Así que, hay cuatro piezas principales de código abierto en las que trabaja la empresa, incluyendo Vite, Vitest, Rodan y RxC. Y aquí hay una visión más detallada de la pila. Así que, en la parte superior están las herramientas de framework que se construyen sobre el ecosistema de Vite. Vite en sí mismo es obviamente el punto de integración. Muchos de estos frameworks también usan Vitest. Vitest se puede usar solo en cualquier proyecto de JavaScript. Puedes usarlo para probar código de backend. Muchos proyectos que ni siquiera usan Vite también usarían Vitest. Así que, Vite y Vitest interactúan más directamente con frameworks y usuarios finales. Y Rodan es el empaquetador que soporta Vite internamente. Maneja algunas de las tareas de más bajo nivel de empaquetar tu código, optimizar tu código y darte división avanzada de fragmentos, etc. En la capa inferior, OXC es la cadena de herramientas de lenguaje que soporta todas las piezas de nivel superior. OXC en sí mismo incluye el analizador, que está en el núcleo.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Vite: Repensando las Herramientas de Frontend
JSNation Live 2021JSNation Live 2021
31 min
Vite: Repensando las Herramientas de Frontend
Top Content
Vite is a next-generation build tool that leverages native ES modules for improved performance. It eliminates the need for bundling and improves hot module replacement. Vite provides an opinionated default configuration while still allowing advanced customization through plugins. It is framework agnostic and can be used for React and other applications. Vite is being adopted by Next.js and Create React App, and integration with Nuxt 3 offers significant speed improvements.
Bienvenido a Nuxt 3
Vue.js London Live 2021Vue.js London Live 2021
29 min
Bienvenido a Nuxt 3
Top Content
Nux3 has made significant improvements in performance, output optimization, and serverless support. Nuxt Bridge brings the Nitro engine for enhanced performance and easier transition between Nuxt 2 and Nuxt Read. Nuxt 3 supports Webpack 5, Bytes, and Vue 3. NextLab has developed brand new websites using Docus technology. Nuxt.js is recommended for building apps faster and simpler, and Nuxt 2 should be used before migrating to Nuxt 3 for stability. DOCUS is a new project that combines Nuxt with additional features like content modules and an admin panel.
10 Años de OSS Independiente: Una Retrospectiva
JSNation 2024JSNation 2024
33 min
10 Años de OSS Independiente: Una Retrospectiva
This talk is a ten-year retrospective into the growth of the Vue.js framework as an open-source project. It highlights the challenges faced by open-source developers, the importance of finding balance and managing scope, and the collaborative nature of the Vue community. The talk also discusses the development of Vite as a build tool and the vision for a unified JavaScript toolchain. It emphasizes the need for community alignment, contributions, and testing, while acknowledging the challenges of bad actors in the open-source community.
Qué hay de nuevo en Vite 6
JSNation US 2024JSNation US 2024
29 min
Qué hay de nuevo en Vite 6
Vite, a popular build tool for front-end development, has seen significant growth since its public release in 2021. It has been downloaded 12 million times and has over 1,000 contributors. Vite offers benefits such as a powerful dev server, hot module reloading, and a plugin API based on Rollup. However, there are limitations with server-side rendering that require extra code and handling of SSR flags. Vite's environment API allows for cleaner communication between the browser and server, and plugins can configure and customize specific environments. The future plans for Vite include stabilizing the environment API and integrating Rolldown Vite for faster builds. Vite is compatible with various front-end frameworks and is used by projects like Vaku and Vinci. The environment API has potential for per-local builds and building on older versions of Node, but may not be recommended for internationalization purposes.
El funcionamiento interno de la construcción de Vite
DevOps.js Conf 2022DevOps.js Conf 2022
31 min
El funcionamiento interno de la construcción de Vite
Welcome to vidBuild, a tool that optimizes your application for production by offering fast hodgemodule replacement and support for various technologies. The build process in vidBuild involves optimizing and minifying assets, bundling JS and CSS, and generating chunks for dynamic imports. The pipeline in vidBuild includes plugins for alias, resolution, CSS modules, and asset handling. Vid is a complete build tool with a flexible plugin system and support from a vibrant community. Vite's plugin API is compatible with Rollup, and Vite aims for simplicity while pushing complexity to the plugin system.