Multi-project management
Manage all your Vue.js projects from a single dashboard. Each project has its own languages, keys, users, and settings — no context switching needed.
Edit your translations live, directly in your app — no migration required. Works with your existing vue-i18n setup, locally or as a full translation platform.
Works with your existing vue-i18n setup — no migration, no lock-in, no external service.
From solo developers to enterprise teams — i18n-dashboard covers the full translation lifecycle.
Manage all your Vue.js projects from a single dashboard. Each project has its own languages, keys, users, and settings — no context switching needed.
Super Admin, Admin, Moderator, and Translator roles — scoped per project.
Built-in approval pipeline keeps translation quality high. Only Approved translations are served to your app.
Reviewers get a dedicated queue. Translators see only what needs their attention. Unapproved keys are never exposed via the API.
Inline editing with keyboard shortcuts. Ctrl+Enter to save, Esc to cancel.
Free Google Translate integration. Translate a single key or batch-translate all missing keys — no API key required.
Regional codes, fallback chains, automatic BCP 47 parent resolution. fr-CA, zh-CN, sr-Latn — all supported out of the box.
Detects $t(), $tc(), useI18n() calls from a local path or a Git URL. Flags unused keys automatically.
Every edit is recorded with timestamp and author. One-click restore to any previous value.
Start with zero-config SQLite. Upgrade to PostgreSQL or MySQL when your team scales.
Full REST API for all operations. Define $n() number and $d() datetime presets with live preview.
Run it directly inside your project. Scan your code, edit translations, and export JSON files — no API required. Perfect for solo developers or small teams.
npx i18n-dashboard initUse it as a centralized translation platform. Manage multiple projects, sync with Git, and serve translations via API instead of JSON files. Ideal for teams and scalable setups.
Unlike most i18n tools, i18n-dashboard works directly with vue-i18n. You keep full control over your translations, your data, and your workflow.
Point to any Vue.js project on your filesystem. i18n-dashboard walks through your source files and finds every $t(), $tc(), useI18n() call.
Provide a Git URL (with optional branch and access token) and i18n-dashboard clones the repo, scans it, and cleans up — without touching your local setup.
Install, configure, and start managing translations with three commands. No cloud account, no credit card, no complex setup.
Add as a dev dependency or install globally. Works with Node.js 18+.
Interactive CLI detects your project root, locales folder, and existing languages automatically.
Browse to localhost:3333 and start translating.
# Install $ npm install i18n-dashboard --save-dev # Setup wizard $ npx i18n-dashboard init # Start $ npx i18n-dashboard start ✓ Dashboard → http://localhost:3333
# Install $ yarn add i18n-dashboard --dev # Setup wizard $ yarn i18n-dashboard init # Start $ yarn i18n-dashboard start ✓ Dashboard → http://localhost:3333
# Install $ pnpm add i18n-dashboard -D # Setup wizard $ pnpm i18n-dashboard init # Start $ pnpm i18n-dashboard start ✓ Dashboard → http://localhost:3333
Drop i18n-dashboard into your project without changing how your app works.
Add a translate npm script so your whole team can run the dashboard without installing it globally.
"scripts": { "translate": "i18n-dashboard start" }
Minimal config, powerful options. Point it at your project and go — or fine-tune database, CORS, SMTP, and more.
export default { port: 3333, projectRoot: '.' }
Your Vue app fetches translations at runtime via the built-in REST API — no file bundling, always up-to-date.
GET /locale/en.json GET /locale/fr.json GET /locale/de.json
Already have JSON locale files? Import them in one command. Sync is conflict-safe — existing translations are never overwritten.
$ npx i18n-dashboard sync ✓ Imported 847 keys