How to use i18n SaaS
Complete guide to automating your product localization
What is i18n SaaS?
i18n SaaS is a centralized platform for managing translations of your application, website, or service. Forget the chaos of managing raw JSON files. Now your whole team can collaborate in a single, user-friendly interface, while our AI automatically translates keys into dozens of target languages.
Step 1: Creating a Project
The first step is to create a project. Select the base language (the language your code is currently written in) and the target languages you want to translate your interface into.
Step 2: Automated Translation with AI
The most powerful feature of the platform is auto-translation. Add a target language, and our advanced neural network will automatically translate all existing keys while perfectly preserving context and code variables.
| Key | UK | EN | CS | |
|---|---|---|---|---|
| button.save | порожньо | порожньо |
Step 3: Team Collaboration
Invite your teammates and assign roles to work on translations together:
Step 4: Analytics and Progress Tracking
Track your project status in real-time. Our dashboard shows the exact translation progress for each locale, total key distribution, and the precise word count saved by leveraging our AI translation engine!
Step 5: Importing and Exporting Translations
You can easily export all your translations as a ZIP archive containing JSON files for each language. This allows you to edit translations locally in your favorite code editor or share them with professional translators.
Once your local files are ready, upload them back using the import button. The system will perform a smart merge of translations:
Step 6: Automated Build Integration (CI/CD)
To build a truly automated localization workflow, you do not need to manually download or export translation archives. You can automatically pull fresh translations directly from our CDN/API using scripts during the pre-build stage of your CI/CD pipeline.
Create a download-locales.js file in your project root:
// download-locales.js
import fs from 'fs';
import path from 'path';
const API_TOKEN = process.env.I18N_PROJECT_TOKEN || 'YOUR_PROJECT_TOKEN';
const LOCALES = ['en', 'uk', 'es']; // Add your languages here
const OUTPUT_DIR = path.resolve('src/locales');
async function downloadLocales() {
if (!fs.existsSync(OUTPUT_DIR)) {
fs.mkdirSync(OUTPUT_DIR, { recursive: true });
}
for (const locale of LOCALES) {
const url = `https://api.i18n-saas.com/api/public/translations/${API_TOKEN}/${locale}`;
console.log(`Downloading translations for: ${locale}...`);
try {
const res = await fetch(url);
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const data = await res.json();
const filePath = path.join(OUTPUT_DIR, `${locale}.json`);
fs.writeFileSync(filePath, JSON.stringify(data, null, 2));
console.log(`✓ Saved ${locale}.json`);
} catch (err) {
console.error(`✗ Failed for ${locale}:`, err.message);
process.exit(1);
}
}
}
downloadLocales();Add its execution before the build script in package.json to update translations automatically:
{
"scripts": {
"prebuild": "node download-locales.js",
"build": "nuxt build"
}
}Step 7: Automated Key Extraction (CLI Sync)
No more creating keys manually in the web interface. Use our CLI tool to scan your source files (.vue, .js, .go), extract all t('key') usages, and push them directly to the backend!
# Запустіть сканування у теці вашого проєкту npx i18n-saas-cli sync ./src --project-id=YOUR_PROJECT_ID --token=YOUR_API_TOKEN # CLI проаналізує код і видасть результат: # Found 144 translation keys. Syncing to backend... # Successfully synced keys to the backend!