i18nMate - AI i18n JSON Translator for VS Code

Right-click to translate i18n JSON files — placeholders always protected.
Why i18nMate?
Translating i18n JSON files is tedious and error-prone. Existing tools either break your {name} / {{variable}} placeholders or require a browser tab. i18nMate lives inside VS Code and guarantees placeholder integrity while delivering fast, accurate translations.
Features
- Placeholder Protection — Never breaks
{name}, {{variable}}, %s, %d, ICU MessageFormat, or any custom placeholder syntax
- One-Click Workflow — Right-click any
.json file in the Explorer, pick a target language, done
- Accurate Translations — Powered by OpenAI GPT-4o-mini with JSON Mode for valid output every time
- Large File Support — Auto-chunks files (<=200 keys per chunk) with a progress bar
- Local Cache — 24-hour translation cache to avoid redundant API calls
- Merge Strategy — Choose to overwrite, merge, or cancel when the target file already exists
- Secure Auth — JWT + VS Code SecretStorage for encrypted token storage
Quick Start
- Install i18nMate from the VS Code Marketplace
- Right-click any
.json file in the Explorer
- Select i18nMate: Translate to...
- Pick a target language and wait for the translated file to appear in the same directory
Usage
Translate a File
- Right-click a
.json file in the VS Code Explorer
- Click
i18nMate: Translate to...
- Select the target language from the list
- The translated file is generated in the same directory automatically
Login
- Run
i18nMate: Login from the Command Palette and enter your email (auto-registers new users)
Check Usage
- Run
i18nMate: Show Usage to see your current translation count
Pricing
Free during early access. All features are available at no cost:
- Unlimited translations
- Placeholder protection
- Large file support
- Local caching
- Progress bar
File Naming
| Source File |
Target File |
Behavior |
en.json |
ja.json |
Language tag replaced |
zh-CN.json |
ja.json |
Language tag replaced |
messages.json |
messages.ja.json |
Language suffix appended |
Configuration
| Setting |
Default |
Description |
i18nMate.serverUrl |
(API URL) |
Backend API server address |
i18nMate.cacheEnabled |
true |
Enable/disable local translation cache (24h) |
Supported Languages
Arabic, Bengali, Chinese (Simplified & Traditional), Czech, Danish, Dutch, English, Finnish, French, German, Greek, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Malay, Norwegian, Polish, Portuguese (PT & BR), Romanian, Russian, Spanish, Swedish, Thai, Turkish, Ukrainian, Urdu, Vietnamese, and more.
Privacy
- Translation content is not stored on our servers — processed in real-time and discarded
- Only email and usage counts are stored (via Supabase)
- Tokens are encrypted in VS Code's SecretStorage
- Full privacy policy: PRIVACY.md
Development
# Install dependencies
npm install
# Compile
npm run compile
# Watch mode
npm run watch
# Package .vsix
npm run package
License
MIT
Built with care by the i18nMate team