Vite - La Herramienta de Desarrollo Frontend de Próxima Generación

Rate this content
Bookmark

¿Cómo construiremos aplicaciones web en el futuro? Aprendamos cómo esbuild y los bundlers como Vite, construidos sobre él, funcionan para ver cómo pueden acelerar nuestros flujos de trabajo de desarrollo.

FAQ

VIT es una herramienta de construcción creada por Evan Mew, quien también es el creador de VJS. VIT funciona como un servidor de desarrollo y un bundler preconfigurado, diseñada para mejorar la velocidad y la eficiencia del desarrollo de software.

VIT se compone de un servidor de desarrollo que soporta módulos ES nativos y un comandante de construcción que gestiona la preagrupación de dependencias y la generación de activos estáticos optimizados para producción.

VIT mejora la velocidad del ciclo de retroalimentación durante el desarrollo, especialmente evidente en proyectos grandes como los que utilizan React, permitiendo modificaciones rápidas sin necesidad de recargar o reconfigurar extensamente.

Para iniciar un proyecto con VIT, puedes usar el comando 'npm init' y luego instalar VIT ejecutando 'npm install DashDev-save-vit'.

Sí, VIT permite elegir entre varios frameworks como React, Vue y Preact para integrarse y trabajar de manera eficiente. Actualmente, Angular no está soportado, pero se espera que lo esté en el futuro.

Sí, VIT puede ser ampliado mediante complementos que se basan en la interfaz de complementos de Rollout, lo que permite una mayor personalización y funcionalidad específica según las necesidades del proyecto.

En los proyectos que utilizan VIT, el archivo index HTML actúa como el punto de entrada, a diferencia de otros proyectos donde se utiliza main.js.

VIT viene con soporte de PostCSS incorporado y permite el uso de CSS módulos simplemente asegurándose de que los archivos CSS tengan la extensión .module.css.

Devlin Duldulao
Devlin Duldulao
21 min
25 Oct, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

VIT es una herramienta de construcción que resuelve el problema de la velocidad lenta del ciclo de retroalimentación al aprovechar el soporte nativo para módulos ES en los navegadores modernos. Te permite escribir código como módulos ES nativos y se encarga del análisis y servido de los módulos por ti. VIT admite JavaScript, CSS, SAS, React, TypeScript y TSX de forma nativa. También permite una migración rápida de CRA a VIT y se puede utilizar como middleware en un servidor Node.js existente para habilitar el renderizado del lado del servidor.

1. Introducción a la herramienta de construcción VIT

Short description:

VIT es una herramienta de construcción creada por Evan Mew, el creador de VJS. Tiene dos partes principales: un servidor de desarrollo y un comandante de construcción. El servidor de desarrollo mejora los módulos ES nativos y proporciona una colocación modular rápida, mientras que el comandante de construcción empaqueta el código en ES build durante el desarrollo y lo agrupa en producción. VIT resuelve el problema de la velocidad lenta del ciclo de retroalimentación aprovechando el soporte nativo para los módulos ES en los navegadores modernos. Le permite escribir código como módulos ES nativos y se encarga del análisis y la entrega de los módulos por usted. VIT también sirve como punto de entrada para los proyectos de VIT y se puede ampliar mediante complementos.

Entonces, ¿qué es VIT? VIT es una palabra francesa, significa rápido. Es una herramienta de construcción creada por Evan Mew, el creador de VJS. Pero VIT es una herramienta independiente del marco. Quiero que pienses en VIT como estas dos cosas aquí. Puedes ver un servidor y un bundler. Entonces, esta herramienta de construcción, VIT, tiene dos partes principales. Es un servidor de desarrollo aquí, y un comandante de construcción que también puedes llamar un bundler preconfigurado.

El servidor de desarrollo proporciona mejoras de funciones avanzadas sobre los módulos ES nativos, una colocación modular extremadamente rápida, por ejemplo, mientras que el comandante agrupa tu código en ES build durante el desarrollo y lo agrupa en producción. ¿Y qué más puedo decir sobre ES build? Mientras hace la preagrupación de dependencias, mientras que roll up hace alguna preconfiguración para generar activos estáticos altamente optimizados para producción.

El problema que estamos tratando de resolver es la velocidad del ciclo de retroalimentación durante el desarrollo. Si usas React, especialmente en un proyecto grande, probablemente hayas notado que la colocación de módulos en caliente lleva a veces dos, tres, cuatro, cinco, dependiendo de tu máquina, y tienes que cambiar tu configuración de Webpack, JS o habilitar el almacenamiento en caché, etc., solo editando un archivo. Es posible que tengas que esperar unos segundos para que se actualicen cuatro cosas en la pantalla. Este problema se debe a la necesidad de agrupar. No hay forma de que el navegador admita realmente el código modularizado. Esa es la razón por la que tenemos browserify, Webpack, Parcel, etc., para que el código modularizado pueda convertirse en un solo archivo que se pueda ejecutar en el navegador. Todos sabemos que la mayoría de los navegadores modernos admiten nativamente los módulos ES. Esto significa que durante el desarrollo hay una gran cantidad de trabajo que ya no necesitamos hacer porque el navegador ahora puede manejarlos de forma nativa. En VIT, vas a escribir tu código como módulos ES nativos. Y VIT tomará estos módulos ES y luego analizará el archivo y buscará tus declaraciones de importación y luego enviará solicitudes HTTP para cada módulo al servidor de desarrollo. Entonces, el servidor de desarrollo simplemente sirve estos módulos ya que es un análisis muy rápido. Sí. ¿Qué más? Entonces, el archivo index HTML aquí es el punto de entrada en los proyectos de VIT, no main.js que a menudo se ve en proyectos de Webpack. Así que piénsalo de nuevo como un servidor de desarrollo. De acuerdo. Poniendo todo esto junto, VIT te proporciona una experiencia de desarrollo extremadamente rápida y eficiente. Hablando de complementos, VIT se puede ampliar mediante complementos, que se basan en la interfaz de complementos de Rollout. Verás más sobre los complementos en un momento. Para iniciar VIT, puedes enviar PM yarn, PM PM. Aquí tienes los comandos que puedes usar.

2. Demo de la herramienta de construcción VIT

Short description:

Puedes elegir React, Vue, Preact o vanilla VIT. Aún no tenemos Angular. Hagamos una demostración con vanilla VIT, luego vanilla VIT-to-React. Si tenemos tiempo, podemos migrar de CRI a React-Vite. Podemos probarlo aquí, VIT-demo. Instala el paquete VIT y crea un archivo de índice. Usa el comando dev para ejecutar la aplicación en el puerto 3000 y el comando preview para comparar el entorno de desarrollo y producción en el puerto 5000. Echa un vistazo a los módulos de Node, incluyendo CS build, roll-up y post-CSS.

Y puedes elegir React, Vue, Preact o vanilla VIT. Desafortunadamente, aún no tenemos Angular aquí. Probablemente el próximo año, porque Angular tiene esta configuración muy única, su canal de construcción, herramienta de construcción.

Sí, hagamos una demostración aquí. Vamos a probar vanilla VIT, luego vanilla VIT-to-React. Y si tenemos más tiempo, podemos migrar de CRI a React-Vite. Sí, podemos probarlo aquí, digamos, VIT-demo.

De acuerdo, cierra esto. Ahora, tal vez podamos ejecutar npm init y comenzar a agregar el paquete VIT. Sí, aquí, npm install DashDev-save-vit. Mientras esperamos, podemos crear un archivo de índice aquí. Ese es el punto de entrada. Y revisa, digamos, aquí. Sí, mira aquí, VIT 2.6.2. Eliminemos el script de ejemplo aquí. Cambiémoslo, digamos, a dev. Esto es GitHub Copilot ayudándome. Y build o construyendo el proyecto VIT. Probablemente aquí, preview o bit preview. ¿Entonces, qué son estos? Dev 2. Ejecuta tu proyecto VIT en un entorno de desarrollo aquí. VIT build para construir. Eso creará esto. Entonces, dev, por cierto, ejecutará la aplicación en el puerto 3000. Luego podemos previsualizar la construcción usando este comando de previsualización aquí, que se ejecutará en el puerto 5000. Básicamente, esto te permite previsualizar tu proyecto en producción. Así puedes comparar el entorno de desarrollo y producción de tu aplicación o versión de tu aplicación. Y sí, echemos un vistazo a los módulos de Node aquí. Mira aquí, tenemos CS build, roll-up, un poco de post-CSS. Así que aquí, post-CSS.

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 es una nueva herramienta de construcción que pretende proporcionar un flujo de trabajo más delgado, rápido y sin fricciones para la construcción de aplicaciones web modernas. Esta charla se sumergirá en el trasfondo del proyecto, la justificación, los detalles técnicos y las decisiones de diseño: qué problema resuelve, qué lo hace rápido y cómo encaja en el panorama de las herramientas JS.
Bienvenido a Nuxt 3
Vue.js London Live 2021Vue.js London Live 2021
29 min
Bienvenido a Nuxt 3
Top Content
Explica sobre la refactorización del código base de NuxtJS y los desafíos que enfrenta para implementar Vue 3, Vite y otros paquetes.
pnpm: un gestor de paquetes rápido y eficiente para JavaScript
DevOps.js Conf 2022DevOps.js Conf 2022
31 min
pnpm: un gestor de paquetes rápido y eficiente para JavaScript
Aprenderás sobre uno de los gestores de paquetes más populares para JavaScript y sus ventajas sobre npm y Yarn.Una breve historia de los gestores de paquetes de JavaScriptLa estructura aislada de node_modules creada por pnpmQué hace que pnpm sea tan rápidoQué hace que pnpm sea eficiente en el uso del espacio en discoSoporte para monoreposGestión de versiones de Node.js con pnpm
10 Años de OSS Independiente: Una Retrospectiva
JSNation 2024JSNation 2024
33 min
10 Años de OSS Independiente: Una Retrospectiva
En esta charla, Evan echa un vistazo atrás en su trayectoria de código abierto, comenzando desde proyectos de hobby hasta liderar hoy en día dos de los proyectos más influyentes en el ecosistema de JavaScript: Vue y Vite. Discutiremos los altibajos durante este viaje, y también tocaremos un poco sobre el futuro de los dos proyectos.
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
Vite, el servidor de desarrollo ESM desagregado y el HMR rápido, son revolucionarios para la experiencia de desarrollo (DX). Pero Vite también brilla al construir tus aplicaciones en producción.Esta charla profundizará en cómo encajan las piezas principales para empaquetar y minimizar tu código:La construcción de Vite como una configuración de Rollup con opiniones.Cómo se utiliza esbuild como un transpilador rápido de TS y JSX y un minificador.El pipeline de plugins de producción.Los frameworks modernos (Nuxt, SvelteKit, Astro, entre otros) han elegido Vite, mejorando la experiencia de desarrollo (DX) y las optimizaciones para su caso de uso objetivo.Descubriremos Vite como un conjunto de herramientas pulido y extensible para crear aplicaciones modernas optimizadas.
The Eternal Sunshine of the Zero Build Pipeline
React Finland 2021React Finland 2021
36 min
The Eternal Sunshine of the Zero Build Pipeline
For many years, we have migrated all our devtools to Node.js for the sake of simplicity: a common language (JS/TS), a large ecosystem (NPM), and a powerful engine. In the meantime, we moved a lot of computation tasks to the client-side thanks to PWA and JavaScript Hegemony.
So we made Webapps for years, developing with awesome reactive frameworks and bundling a lot of dependencies. We progressively moved from our simplicity to complex apps toolchains. We've become the new Java-like ecosystem. It sucks.
It's 2021, we've got a lot of new technologies to sustain our Users eXperience. It's time to have a break and rethink our tools rather than going faster and faster in the same direction. It's time to redesign the Developer eXperience. It's time for a bundle-free dev environment. It's time to embrace a new frontend building philosophy, still with our lovely JavaScript.
Introducing Snowpack, Vite, Astro, and other Bare Modules tools concepts!