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
Version support status
| Cycle | Status | Date |
|---|---|---|
| Vue 3.5 | Supported | No support end date published |
| Vue 3.4 | End of life | EOL 3 September 2024 |
| Vue 3.3 | End of life | EOL 29 December 2023 |
| Vue 2.7 | End of life | EOL 31 December 2023 |
| Vue 3.2 | End of life | EOL 11 May 2023 |
| Vue 3.1 | End of life | EOL 9 August 2021 |
| Vue 3.0 | End of life | EOL 7 June 2021 |
| Vue 2.6 | End of life | EOL 1 July 2022 |
| Vue 2.5 | End of life | EOL 4 February 2019 |
| Vue 2.4 | End of life | EOL 13 October 2017 |
| Vue 2.3 | End of life | EOL 13 July 2017 |
| Vue 2.2 | End of life | EOL 27 April 2017 |
| Vue 2.1 | End of life | EOL 26 February 2017 |
| Vue 2.0 | End of life | EOL 22 November 2016 |
