evo-mark/inertia-i18n

Internationalisation support for Inertia projects
1,347 1
Install
composer require evo-mark/inertia-i18n
Latest Version:v3.1.0
License:MIT
Last Updated:Mar 29, 2026
Links: GitHub  ·  Packagist
Maintainer: evomark

evoMark company logo

Build status Total Downloads License

Inertia I18n

Upgrading from V2

Please see the CHANGELOG.md file for upgrade instructions

Installation

composer require evo-mark/inertia-i18n
npm install ./vendor/evo-mark/inertia-i18n

pnpm add file:vendor/evo-mark/inertia-i18n
import InertiaI18n from "inertia-i18n/vite";

export default {
	plugins: [
		InertiaI18n({
			// langDirectory: resolve(process.cwd() + "/lang"),
			// outputDirectory: resolve(process.cwd() + "/lang/json"),
		}),
	],
};
import { inertiaI18nVue } from "inertia-i18n/vue";

createInertiaApp({
	withApp(app) {
		app.use(inertiaI18nVue);
	},
});

Config

You can publish the config, if necessary, with Artisan:

php artisan v:p --tag=inertia-i18n

Your path should match the outputDirectory in your Vite plugin config (default /lang)

Usage

After installation, you can use your frontend localisation package as usual:

<template>
	<div>{{ $t('messages.hello_world') }}</div>
</template>

OR

<script setup>
import { useI18n } from 'vue-i18n';

const { t } = useI18n();
const translated = computed(() => t('message.hello_world));
</script>

See the documentation for the respective frontend packages for more information:

Vue: vue-i18n