3.0.11

Latest release in branch 3.0
Released 5 years ago (April 01, 2021)

Software Vue.js
Branch 3.0
Status
End of life
End of support (OSS) June 07, 2021
First official release version 3.0.0
First official release date 5 years ago (September 18, 2020)
Release notes https://github.com/vuejs/core/releases/tag/v3.0.11
Source code https://github.com/vuejs/core/tree/v3.0.11
Documentation https://v3.vuejs.org
Migration guide https://v3-migration.vuejs.org
Vue.js 3.0 Releases View full list

What Is New in Vue.js 3.0

Vue 3.0, codenamed "One Piece," is a complete rewrite of the framework focused on making it smaller, faster, and more maintainable. It introduces a new reactivity system and Composition API while maintaining full compatibility with the Options API from Vue 2.

Category Key Changes
Performance Faster component instantiation, optimized compiler-informed runtime, smaller bundle size
API & Development Composition API, improved TypeScript support, exposed reactivity system
Built-in Components New Teleport and Suspense components
Breaking Changes Global API changes, v-model usage, functional components, render function API

How does the performance compare to Vue 2?

Vue 3 is significantly faster across the board. The team achieved this through a tree-shaking friendly architecture and a compiler-informed Virtual DOM. You get faster component instantiation and updates with roughly half the memory usage of Vue 2.

In practice, the new compiler can skip patching entire branches of the tree if their dynamicness is analyzed at compile time. This matters because your apps feel snappier even as they grow in complexity.

What is the Composition API and why use it?

The Composition API is a new set of APIs for organizing component logic, primarily the setup() function. It lets you group code by logical concern instead of forcing organization by component options like data or methods.

This is a game-changer for building large-scale applications. It makes code more readable and maintainable, especially when sharing and reusing logic across components. You can now extract and import reactive logic cleanly.

What are the major built-in component changes?

Vue 3 introduces two powerful new components. Teleport (formerly Portal) allows you to render a component's content in a different part of the DOM tree. Suspense provides a declarative way to handle async dependencies in a component tree.

These components solve common pain points. Teleport is perfect for modals and popovers, while Suspense simplifies handling loading states for components that fetch data asynchronously.

How has TypeScript support improved?

Vue 3's codebase is now written in TypeScript itself. This provides superior type inference and eliminates the need to maintain separate type declarations. The new architecture is designed with type safety in mind from the ground up.

For developers, this means auto-completion and type checking just work better. You'll spend less time fighting the type system and more time building features with confidence.

What are the key breaking changes to know?

The global API has been restructured to support tree-shaking. APIs like Vue.nextTick() are now named exports. The v-model directive has been reworked, replacing .sync and allowing multiple v-models on a component.

Functional components are now plain functions and the render function API has changed. Event API changes include removing the $on, $off, and $once instance methods. A compatibility build is available to ease migration.

FAQ

Is the Options API from Vue 2 being removed?
No, the Options API remains fully supported and is not deprecated. The Composition API is an additive feature for organizing complex logic, not a replacement.

How difficult is it to migrate a Vue 2 project to Vue 3?
The migration requires effort due to breaking changes, but a compatibility build is provided to help. The team also released a migration guide and build-time configuration to warn about potential issues.

Can I use my Vue 2 plugins with Vue 3?
Most Vue 2 plugins will not work out of the box due to the changed global API and internal architecture. Plugin authors need to update their packages for Vue 3 compatibility.

What happened to the class-based component syntax?
Class-based components are no longer a core feature in Vue 3 due to the new reactivity system. The Composition API is now the recommended approach for advanced logic organization.

Is the entire Vue ecosystem (Vuex, Vue Router) ready for Vue 3?
At the time of Vue 3's release, the companion libraries were also updated to their next major versions (Vuex 4, Vue Router 4) to provide full compatibility.

Releases In Branch 3.0

Version Release date
3.0.11 5 years ago
(April 01, 2021)
3.0.10 5 years ago
(March 31, 2021)
3.0.9 5 years ago
(March 27, 2021)
3.0.8 5 years ago
(March 26, 2021)
3.0.7 5 years ago
(March 01, 2021)
3.0.6 5 years ago
(February 24, 2021)
3.0.5 5 years ago
(December 30, 2020)
3.0.4 5 years ago
(December 02, 2020)
3.0.3 5 years ago
(November 25, 2020)
3.0.2 5 years ago
(October 20, 2020)
3.0.1 5 years ago
(October 15, 2020)
3.0.0-rc.13 5 years ago
(September 18, 2020)
3.0.0 5 years ago
(September 18, 2020)
3.0.0-rc.12 5 years ago
(September 16, 2020)
3.0.0-rc.11 5 years ago
(September 15, 2020)
3.0.0-rc.10 5 years ago
(September 02, 2020)
3.0.0-rc.9 5 years ago
(August 26, 2020)
3.0.0-rc.8 5 years ago
(August 25, 2020)
3.0.0-rc.7 5 years ago
(August 21, 2020)
3.0.0-rc.6 5 years ago
(August 19, 2020)
3.0.0-rc.5 5 years ago
(July 28, 2020)
3.0.0-rc.3 5 years ago
(July 21, 2020)
3.0.0-rc.4 5 years ago
(July 21, 2020)
3.0.0-rc.2 5 years ago
(July 19, 2020)
3.0.0-rc.1 5 years ago
(July 17, 2020)
3.0.0-beta.23 5 years ago
(July 16, 2020)
3.0.0-beta.24 5 years ago
(July 16, 2020)
3.0.0-beta.22 5 years ago
(July 15, 2020)
3.0.0-beta.21 5 years ago
(July 14, 2020)
3.0.0-beta.20 5 years ago
(July 08, 2020)
3.0.0-beta.19 5 years ago
(July 07, 2020)
3.0.0-beta.18 5 years ago
(July 02, 2020)
3.0.0-beta.17 5 years ago
(June 30, 2020)
3.0.0-beta.16 5 years ago
(June 29, 2020)
3.0.0-beta.15 5 years ago
(June 12, 2020)
3.0.0-beta.14 5 years ago
(May 18, 2020)
3.0.0-beta.13 5 years ago
(May 17, 2020)
3.0.0-beta.11 5 years ago
(May 11, 2020)
3.0.0-beta.12 5 years ago
(May 11, 2020)
3.0.0-beta.10 5 years ago
(May 07, 2020)
3.0.0-beta.8 5 years ago
(May 04, 2020)
3.0.0-beta.9 5 years ago
(May 04, 2020)
3.0.0-beta.7 5 years ago
(May 02, 2020)
3.0.0-beta.6 5 years ago
(May 01, 2020)
3.0.0-beta.5 5 years ago
(April 30, 2020)
3.0.0-beta.4 5 years ago
(April 24, 2020)
3.0.0-beta.3 5 years ago
(April 20, 2020)
3.0.0-beta.2 5 years ago
(April 17, 2020)
3.0.0-beta.1 5 years ago
(April 16, 2020)
3.0.0-alpha.13 6 years ago
(April 15, 2020)
3.0.0-alpha.12 6 years ago
(April 08, 2020)
3.0.0-alpha.11 6 years ago
(April 04, 2020)
3.0.0-alpha.10 6 years ago
(March 24, 2020)
3.0.0-alpha.9 6 years ago
(March 16, 2020)
3.0.0-alpha.8 6 years ago
(March 06, 2020)
3.0.0-alpha.7 6 years ago
(February 26, 2020)
3.0.0-alpha.6 6 years ago
(February 22, 2020)
3.0.0-alpha.5 6 years ago
(February 18, 2020)
3.0.0-alpha.4 6 years ago
(January 27, 2020)
3.0.0-alpha.3 6 years ago
(January 22, 2020)
3.0.0-alpha.2 6 years ago
(January 13, 2020)
3.0.0-alpha.1 6 years ago
(January 02, 2020)
3.0.0-alpha.0 6 years ago
(December 20, 2019)