/vue-next

Repo for Vue 3.0 (currently in beta)

Primary LanguageTypeScriptMIT LicenseMIT

vue-next beta CircleCI

Status: Release Candidate

  • All planned RFCs have been merged.

  • All merged RFCs have been implemented.

  • Vue CLI now has experimental support via vue-cli-plugin-vue-next.

  • There is also a simple plain webpack-based setup with Single-File Component support available here.

Please note that there could still be undocumented behavior inconsistencies with 2.x. When you run into such a case, please make sure to first check if the behavior difference has already been proposed in an existing RFC. If the inconsistency is not part of an RFC, then it's likely unintended, and an issue should be opened (please make sure to use the issue helper when opening new issues).

In addition, the current implementation requires native ES2015+ in the runtime environment and does not support IE11 (yet). The IE11 compatible build will be worked on after we have reached RC stage.

The documentation of Vue 3 can be found at https://v3.vuejs.org/

Status of the rest of the framework

Vue Router

We still have a few minor router hook behavior consistency issues with vue-router@3.x, but these are the only things that is blocking the router from being marked as Beta. The router is usable for new, non-critical projects.

Vuex

The only difference between Vuex 4.0 and 3.x is that it's Vue 3 compatible! It is ready to enter RC together with Vue 3 core.

Vue CLI

Vue 3 support in Vue CLI is currently provided via the vue-cli-plugin-vue-next plugin. You can scaffold a new project and then run vue add vue-next to switch to Vue 3. Vue 3 will become a option in the project creation process when it reaches RC.

Note if you are not particularly attached to webpack and IE11 support, you can also start a Vue 3 project with Vite.

JSX Support

There are currently two JSX transform implementations for Vue 3 with slightly differing syntax (for Vue specific features):

We are using this thread to unify the design and land on an official specification of how Vue features should be handled in JSX. If you use Vue with JSX, please provide your feedback in that thread.

Other Projects

Project Status
vue-devtools alpha [Github]
eslint-plugin-vue alpha [Github]
@vue/test-utils alpha [Github]
vue-class-component alpha [Github]
vue-loader alpha [Github]
rollup-plugin-vue alpha [Github]

Contribution

See Contributing Guide.