Vue

Current release: 3.5.41, released 5 August 2026.

What it is

Vue is an open-source JavaScript framework for building user interfaces and single-page web applications. It is designed around declarative templates, reactive state, and reusable components. Vue can be adopted incrementally: teams can add it to an isolated interactive area of a server-rendered page, or use its broader ecosystem for routing, state management, build tooling, server-side rendering, and full application development. Modern Vue development commonly uses single-file components, which keep a component's template, logic, and styles together, and a composition-oriented API for organizing reusable behavior.

History

Vue began as a lightweight framework influenced by component-based UI development and by the goal of making reactive interfaces approachable. Its early adoption was helped by a template syntax that felt familiar to developers coming from HTML-centric and server-rendered applications, while still supporting richer client-side interfaces. The project grew from an independently maintained framework into a widely used ecosystem with official tooling and libraries. A major later generation redesigned important internals, introduced a more composition-focused way to author component logic, improved type-system support, and established a different compatibility boundary from earlier applications. The older major line has reached end of life, while the current line remains actively maintained.

Migration notes

Migration effort depends heavily on which Vue generation an application uses and how closely it follows recommended ecosystem patterns. Moving from the older major line to the current one can require changes to component lifecycle usage, event and attribute handling, template behavior, render-function code, plugin installation, test utilities, and dependencies that rely on framework internals. Compatibility tooling can identify many issues, but applications with custom render code, older mixin-heavy designs, deprecated APIs, or unmaintained third-party components often need substantial manual work. Moving into Vue from another framework usually requires translating component boundaries, routing, forms, state ownership, asynchronous data flows, styling conventions, and test patterns rather than mechanically converting syntax. Vue's incremental adoption model can reduce risk for server-rendered applications, but mixed ownership of the DOM can create lifecycle and integration problems. Migrating away from Vue similarly requires replacing its template directives, reactivity model, component communication patterns, dependency injection or plugin conventions, and any framework-specific routing, state, server-rendering, or build integrations. Single-file components are convenient within Vue but require deliberate decomposition when moving to platforms with different file and styling conventions.

Release history

3.x

Version support status

Vue version support status by cycle
CycleStatusDate
Vue 3.5SupportedNo support end date published
Vue 3.4End of lifeEOL 3 September 2024
Vue 3.3End of lifeEOL 29 December 2023
Vue 2.7End of lifeEOL 31 December 2023
Vue 3.2End of lifeEOL 11 May 2023
Vue 3.1End of lifeEOL 9 August 2021
Vue 3.0End of lifeEOL 7 June 2021
Vue 2.6End of lifeEOL 1 July 2022
Vue 2.5End of lifeEOL 4 February 2019
Vue 2.4End of lifeEOL 13 October 2017
Vue 2.3End of lifeEOL 13 July 2017
Vue 2.2End of lifeEOL 27 April 2017
Vue 2.1End of lifeEOL 26 February 2017
Vue 2.0End of lifeEOL 22 November 2016

Migration guides involving Vue