Architecture Migration

Migrate Vue 2 to Vue 3 Automatically

Upload your project and get production-ready migrated code in minutes.

What changes between Vue 2 and Vue 3?

  • Global API changed: new Vue() replaced by createApp(); Vue.component, Vue.use become app-scoped
  • v-model breaking change: .sync modifier removed, component v-model uses modelValue/update:modelValue
  • Filters removed entirely; use computed properties or methods instead
  • Composition API available as primary paradigm alongside Options API
  • Template syntax: v-if/v-for precedence reversed; v-bind merge order changed
  • Emits must be declared with defineEmits or emits option; undeclared emits trigger warnings
  • Transition class names renamed: v-enter to v-enter-from, v-leave to v-leave-from
  • Vuex 3.x replaced by Vuex 4 or Pinia for state management

How Nivo migrates Vue 2 to Vue 3

01

Connect your project

Paste a GitHub URL or upload a ZIP file of your Vue 2 project.

02

Nivo detects your Vue 2 project

The engine scans your codebase to identify Vue 2 patterns, APIs, and configuration that need updating.

03

AI applies all Vue 3 migration transforms

Hybrid AST + AI engine applies deterministic transforms for configuration and dependencies, and AI-powered transforms for complex code changes. Every change gets a confidence score.

04

Download migrated codebase + review report

Get a ZIP with your fully migrated code, a complete migration report, and a checklist of items flagged for manual review.

Frequently Asked Questions

What are the biggest breaking changes in Vue 3?

The global API shift from new Vue() to createApp() affects every entry point. The v-model changes break parent-child communication patterns. Removed filters require rewriting template expressions. These three areas represent the bulk of migration effort.

Do I have to use the Composition API?

No. Vue 3 fully supports the Options API. Nivo migrates your Options API code to be Vue 3 compatible without forcing Composition API adoption. You can adopt Composition API incrementally after migration.

How long does a Vue 2 to Vue 3 migration take?

Most projects complete in 10 to 20 minutes. Vue 2 to 3 has more breaking changes than typical framework upgrades, so Nivo applies more transformations per file. Larger projects with many custom components take proportionally longer.

Should I migrate from Vuex to Pinia at the same time?

Nivo can handle both simultaneously or separately. Vuex 4 works with Vue 3, so you can upgrade Vue first and migrate to Pinia later. The tool supports both workflows.

Will my Vuetify or Element UI components work?

These libraries have Vue 3 compatible versions (Vuetify 3, Element Plus). Nivo flags incompatible library versions and updates import paths where Vue 3 versions are available.

Start your Vue 2 to Vue 3 migration

Free tier available — no credit card required