Vue.js Framework

Vue.js Internationalization Made Easy

Add i18n to your Vue.js app in minutes. Works with vue-i18n, Nuxt, and Composition API. TypeScript support included.

Vue 3

Composition API

Vue 2

Options API

Nuxt 3

@nuxtjs/i18n

Vite

Hot reload

Quick Start

1. Install packages
npm install @intlpullhq/vue vue-i18n
2. Initialize i18n
import { createI18n } from 'vue-i18n';
import en from './locales/en.json';

const i18n = createI18n({
  locale: 'en',
  messages: { en }
});

app.use(i18n);
3. Use in components
<template>
  <h1>{{ $t('welcome.title') }}</h1>
</template>

<script setup>
import { useI18n } from 'vue-i18n';
const { t } = useI18n();
</script>

Features

Vue I18n Support

First-class integration with vue-i18n v9 for Vue 3 and Composition API.

Nuxt Ready

Works with @nuxtjs/i18n for Nuxt 3 applications out of the box.

CI/CD Integration

Sync translations on every deploy. Works with Vercel, Netlify, and more.

AI Translations

Get instant AI translations with Vue component context awareness.

Nuxt 3 Support

nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@nuxtjs/i18n'],
  i18n: {
    locales: ['en', 'fr', 'es'],
    defaultLocale: 'en',
    vueI18n: './i18n.config.ts'
  }
})

Why Vue Developers Choose IntlPull

Sync translations from dashboard to codebase
Works with Vue 2 and Vue 3
Nuxt 3 with @nuxtjs/i18n support
Type-safe with TypeScript
Composition API and Options API
Works with Vite and Vue CLI

Ready to Add i18n?

Start internationalizing your Vue.js app in minutes.

    Vue i18n | Vue.js Internationalization with IntlPull 2026 | IntlPull