vitejs.dev Open in urlscan Pro
54.156.13.12  Public Scan

Submitted URL: https://www.codeproject.com/News.aspx?ntag=19837497854368772&_z=10130219
Effective URL: https://vitejs.dev/blog/announcing-vite5
Submission: On November 21 via api from US — Scanned from CA

Form analysis 0 forms found in the DOM

Text Content

Skip to content
Vite
SearchK
Main NavigationGuideConfigPlugins
Resources
Team
Blog
Releases
Twitter
Discord Chat
Awesome Vite
ViteConf
DEV Community
Rollup Plugins Compat
Changelog
Contributing
Version
Vite 4 Docs
Vite 3 Docs
Vite 2 Docs

English

简体中文
日本語
Español
Português
한국어
Deutsch

MastodonTwitterDiscordGitHub

English

简体中文
日本語
Español
Português
한국어
Deutsch

Appearance


MastodonTwitterDiscordGitHub
On this page
On this page
Table of Contents for current page
   
 * Quick start with Vite 5
 * Node.js Support
 * Performance
 * Main Changes
 * Migrating to Vite 5
 * Acknowledgments
   



Beyond Fast

ViteConf 2023

Watch the replay!

STACKBLITZ

NUXTLABS

ASTRO

STORYBLOK

BIT

REMIX

TAILWIND LABS

VUE JOBS

DIVRIOTS

PREFECT.IO

JETBRAINS

MUX


Revolutionize Web Dev with free O'Reilly Report: Master Decoupling & Composable
Architectures! ads via Carbon
On this page


VITE 5.0 IS OUT!

November 16, 2023



Vite 4 was released almost a year ago, and it served as a solid base for the
ecosystem. npm downloads per week jumped from 2.5 million to 7.5 million, as
projects keep building on a shared infrastructure. Frameworks continued to
innovate, and on top of Astro, Nuxt, SvelteKit, Solid Start, Qwik City, between
others, we saw new frameworks joining and making the ecosystem stronger.
RedwoodJS and Remix switching to Vite paves the way for further adoption in the
React ecosystem. Vitest kept growing at an even faster pace than Vite. Its team
has been hard at work and will soon release Vitest 1.0. The story of Vite when
used with other tools such as Storybook, Nx, and Playwright kept improving, and
the same goes for environments, with Vite dev working both in Deno and Bun.

We had the second edition of ViteConf a month ago, hosted by StackBlitz. Like
last year, most of the projects in the ecosystem got together to share ideas and
connect to keep expanding the commons. We're also seeing new pieces complement
the meta-framework toolbelt like Volar and Nitro. The Rollup team released
Rollup 4 that same day, a tradition Lukas started last year.

Six months ago, Vite 4.3 was released. This release significantly improved the
dev server performance. However, there is still ample room for improvement. At
ViteConf, Evan You unveiled Vite's long-term plan to work on Rolldown, a
Rust-port of Rollup with compatible APIs. Once it is ready, we intend to use it
in Vite Core to take on the tasks of both Rollup and esbuild. This will mean a
boost in build performance (and later on in dev performance too as we move
perf-sensitive parts of Vite itself to Rust), and a big reduction of
inconsistencies between dev and build. Rolldown is currently in early stages and
the team is preparing to open source the codebase before the end of the year.
Stay tuned!

Today, we mark another big milestone in Vite's path. The Vite team,
contributors, and ecosystem partners, are excited to announce the release of
Vite 5. Vite is now using Rollup 4, which already represents a big boost in
build performance. And there are also new options to improve your dev server
performance profile.

Vite 5 focuses on cleaning up the API (removing deprecated features) and
streamlines several features closing long-standing issues, for example switching
define to use proper AST replacements instead of regexes. We also continue to
take steps to future-proof Vite (Node.js 18+ is now required, and the CJS Node
API has been deprecated).

Quick links:

 * Docs
 * Migration Guide
 * Changelog

Docs in other languages:

 * 简体中文
 * 日本語
 * Español
 * Português
 * 한국어
 * Deutsch (new translation!)

If you're new to Vite, we suggest reading first the Getting Started and Features
guides.

We appreciate the more than 850 contributors to Vite Core, and the maintainers
and contributors of Vite plugins, integrations, tools, and translations that
have helped us reach here. We encourage you to get involved and continue to
improve Vite with us. You can learn more at our Contributing Guide. To get
started, we recommend triaging issues, reviewing PRs, sending failing tests PRs
based on open issues, and helping others in Discussions and Vite Land's help
forum. You'll learn a lot along the way and have a smooth path to further
contributions to the project. If you have doubts, join us on our Discord
community and say hi on the #contributing channel.

To stay up to date, follow us on X or Mastodon.


QUICK START WITH VITE 5

Use pnpm create vite to scaffold a Vite project with your preferred framework,
or open a started template online to play with Vite 5 using vite.new. You can
also run pnpm create vite-extra to get access to templates from other frameworks
and runtimes (Solid, Deno, SSR, and library starters). create vite-extra
templates are also available when you run create vite under the Others option.

Note that Vite starter templates are intended to be used as a playground to test
Vite with different frameworks. When building your next project, we recommend
reaching out to the starters recommended by each framework. Some frameworks now
redirect in create vite to their starters too (create-vue and Nuxt 3 for Vue,
and SvelteKit for Svelte).


NODE.JS SUPPORT

Vite no longer supports Node.js 14 / 16 / 17 / 19, which reached its EOL.
Node.js 18 / 20+ is now required.


PERFORMANCE

On top of Rollup 4's build performance improvements, there is a new guide to
help you identify and fix common performance issues at
https://vitejs.dev/guide/performance.

Vite 5 also introduces server.warmup, a new feature to improve startup time. It
lets you define a list of modules that should be pre-transformed as soon as the
server starts. When using --open or server.open, Vite will also automatically
warm up the entry point of your app or the provided URL to open.


MAIN CHANGES

 * Vite is now powered by Rollup 4
 * The CJS Node API has been deprecated
 * Rework define and import.meta.env.* replacement strategy
 * SSR externalized modules value now matches production
 * worker.plugins is now a function
 * Allow path containing . to fallback to index.html
 * Align dev and preview HTML serving behavior
 * Manifest files are now generated in .vite directory by default
 * CLI shortcuts require an additional Enter press
 * Update experimentalDecorators and useDefineForClassFields TypeScript behavior
 * Remove --https flag and https: true
 * Remove resolvePackageEntry and resolvePackageData APIs
 * Removes previously deprecated APIs
 * Read more about advanced changes affecting plugin and tool authors


MIGRATING TO VITE 5

We have worked with ecosystem partners to ensure a smooth migration to this new
major. Once again, vite-ecosystem-ci has been crucial to help us make bolder
changes while avoiding regressions. We're thrilled to see other ecosystems adopt
similar schemes to improve the collaboration between their projects and
downstream maintainers.

For most projects, the update to Vite 5 should be straight forward. But we
advise reviewing the detailed Migration Guide before upgrading.

A low level breakdown with the full list of changes to Vite core can be found at
the Vite 5 Changelog.


ACKNOWLEDGMENTS

Vite 5 is the result of long hours of work by our community of contributors,
downstream maintainers, plugins authors, and the Vite Team. A big shoutout to
Bjorn Lu for leading the release process for this major.

We're also thankful to individuals and companies sponsoring Vite development.
StackBlitz, Nuxt Labs, and Astro continue to invest in Vite by hiring Vite team
members. A shoutout to sponsors on Vite's GitHub Sponsors, Vite's Open
Collective, and Evan You's GitHub Sponsors. A special mention to Remix for
becoming a Gold sponsor and contributing back after switching to Vite.

Suggest changes to this page

Released under the MIT License. (dc494ad4)

Copyright © 2019-present Evan You & Vite Contributors