Unbreakable i18n for agents loved by humans
No key to name, no locale file to sync, no a.b.c on screen
The source text is the key, translations are unbreakable.
ืืืืจื ื-5 ืืงืืช
ืืืฉืื ื-i18n ืืืื ืฉืื ื-5 ืืงืืช. ืื ืฆืืืง.
ืืขืจืืช ืืื ืืคืชืืืช
ืืืื ืฉืื ืื ืืืืจ ืืืืืช ืืขืืจื ืืืฉืืืืช ืืกืจืืช ืืฉืืขืืช ืืืื.
ืืืืืื ืืืืื ืืจืืฉืื
ืฉืืื ืืฉืืืงืื ืืื ืืืืืืื ืืื ืืืืฅ ื ืืกืฃ.
ืืืืจ ืืช i18n, ืฉืืืจ ืขื ืืกืืก ืืงืื ืฉืื ื ืงื ืืฉืื ืืืืืจืืช
ืืฉื ื ืืกืคืจ PITA (ืืขืืืช) ืขื ืคืชืจืื ืืช ื-i18n ืื ืืืืืื. ืืืืืื ืื ืื ืืืืืื ืฉืืชื ืืืื ืืช ื-i18n ืืื ืฉืจืง ืืคืฉืจ.
ืื ืฆืืจื ืืื ืฉืืชื ืฆืจืื ืืืืืช ืืืืฃ ืืื
ืืืืจ ืืช ืืขืจืืช ืืืคืชืืืช: ืืคืืืช ืฉืขื ืืืช ืฉื ืืื ืืคืชื ืืืืจ
ืงืืืื ืืืืืจื ืขืืืจ ืื ืืคืชื ืืืฉ: 1 ืืงื ืืืคืชื, x500 ืืคืชืืืช, x2 ืฉืคืืช = 17 ืฉืขืืช
ืขื i18n-keyless, ืืชื ืื ืฆืจืื ืืืืื ืืื ืืืขืจืืช ื-i18n. ืืชื ืืืื ืืืืช ืืืืฃ ืืื ืืืืืืื ืืึนืึดืืืึน.
ืืืื ืจืื ืืืขืจืืืช ืืฉืชืืฉืืช ืืืคืชืืืช ืืื ืืชืจืื ืืช ืืืงืกื
ืื ืืืื ืืืฆืืจ. ืื ืืืื ืืชืืืง.
ืืืฉืจ ืืชื ืจืืื ืืงืกื ืืืคืืืงืฆืื, ืืจืืฆื ืืขืืื ืืืชื, ืขืืื ืืืฆืื ืืช ืืืคืชื ืืืชืืื.
ืขื i18n-keyless, ืืชื ืื ืฆืจืื ืืืชืขืกืง ืืืขืจืืช ื-i18n ืืื. ืืฉืชืืฉ ืืืื ืฉืื ืืืฉืื ืืขื ืืื ืืืชืจ.
ืืฉืืจ ืืช ืืชืจืืืืื ื-AI
ืขื ืืขืจืืช ืืืคืชืืืช, ืขืืื ืื ืื ืืช ืืชืจืืืืื ืืืคืืืงืฆืื.
ืืืจืช ืืืฉืชืืฉืื ืฉืื ืืจืื someheader.welcome.title ืืืคืืืงืฆืื ืฉืืื.
ืขื i18n-keyless, ืืชื ืื ืฆืจืื ืืืืื ืืืขืจืืช ื-i18n ืืื. ืคืฉืื ืืชืื ืืืชืจืืช ืืืืืช, ืืชืืงื ืืฉืืืืง ืืฆืืจ ืืืืจืืช.
ืืกืืกื ืืงืื ืืคืื... ืขื ืฉืืืคืชืืืช ืฉื i18n ื ืืืงืื
ืขื ืืขืจืืช ืืืคืชืืืช, ืืืฉืจ ืืชื ืงืืจื ืืช ืืงืื ืืืชืืื, ืขืืื ืืงืจืื ืืคืชืืืช, ืืื ืฉืคื ืืืขืืช.
ืืคืขืืื ืืืื ืืืฆืข ืชืืงืื ืืืืืื ืฉืืืฉืคื ืืื ื ืชืงืื ืืืืื ื ืืงืืืงืืช. ืืื ืืชื ืื ืืืืข ืืช ืื ืื ืืชื ืงืืจื ืืคืชืืืช.
ืขื i18n-keyless, ืืชื ืื ืฆืจืื ืืืืื ืืืขืจืืช ื-i18n ืืื. ืืกืืก ืืงืื ื ืฉืืจ ืืคื.
ืฉืจืช MCP ืืื ืืืกืืช ืืช ืื ืฆืจืื ื-i18n ืฉืื
ืฉืืฉื ืกืืืืช ื ืืกืคืืช ืืืืข ืืืขืจืืช ืืืชืืืช ืื ืื ืืงืืืื ืกืืื ื.
ืืื ืฉื ืืืืฆืื
ืืคืชื ืืื ืืืืื ืืฉื ืืื ืชืฉืืื ื ืืื ื. ืฉื ื ืกืืื ืื ืืืชืืื login.submit ื-auth.button.send ืืืืชื ืืคืชืืจ. ืืื ืืคืชืืืช ืืื ืืืืื ืืงืื.
ืงืืืฅ ืืื ืืขืจืืื, ืื ืขืฉืจืื
ืฉืื ืื ืืืืกืก ืืคืชื ืืฉืคืืข ืขื ืืจืืื ืืขื ืื ืงืืืฅ JSON ืฉื ืฉืคื ืืงืืืืช, ืืกืืื ืื ืฉืืืืื ืงืืฆืื. ืืื, ืฉืื ืื ืืขืชืงื ืืื ืขืจืืื ืฉื ืงืืืฅ ืืืื.
ืืคืก ืงืื ืคืืืงืื ืืืืื ืืฆืื ืกืืื ืื
ืืืืฉื ืกืืื ืื ืขื ืืืืฉื ืขื ืคืื ืขืืจืืื ืืืื ืืช en.json: ืขืืืืช ืืืืื. ืืื ืงืืืฅ ืืฉืืชืฃ, ืื ืฉ-worktrees ืืกืืื ืื ืืจืงืข ืืขืืื ืื ืืชื ืืฉืื.
ืืื ืืืืงื ืื
ืขื ืื ืช ืืืฉืชืืฉ ืืืืฉ ืืืคืชื, ืืกืืื ืืืื ืืืขืื ืืช ืงืืฆื ืืฉืคื ืืืงืฉืจ ืืื ืขืจืืื. ืืขืื ื ืืื ืืคืชื ืืื ื ืขืืฉื ืืืจ: ืืืงืกื ื ืืฆื ืืืืืง ืฉื ืืจืืื.
ืืืืืื ืงืจืืืื
ืืงืฉืช ืืคืื ืืฆืืื ืืฉืคืืื ืืืืชืืื. ืืื ืื ืกืืื ืกืงืืจื ืืืื ืืฉืคืื ืืช ืืขืืชืง ืืื ืืืคืืจ ืื ืืคืชื ืืืืฆื.
ืืื ืืื ื-CLAUDE.md ืฉืื
ืื ืืื i18n ืฉืืชื ืืืชื ืืื ืืื ืฉืืกืืื ืืืื ืืืคืจ. ืืื ืื ืืงืืง ืจืง ืืฉืืจื ืืืช โ ืืืืืืื ืืื ืืืงืกื ืืืืืชื, ืื ืฉืืขืืช ืื ืชืฆืื a.b.c ืขื ืืืกื.
ืืืื ืืืืื ืฉื i18n ืฉืืกืืื ืฉืื ืฆืจืื
# CLAUDE.md Write the UI copy in English and wrap it in <T>โฆ</T> from i18n-keyless-react. That is the whole i18n setup.
ืืกืืื ืฉืื ืืืื ืืืคืขืื ืืืชื, ืื ืจืง ืืืชืื ืืืชื
ืืจื ืฉืจืช ื-MCP, ืืกืืื ืืคืจื ืชืจืืืืื ืืกืจืื, ืงืืจื ืืื, ืืืืืฃ ืืื ืจืข, ืื ืืืืื ืืช ืืขืืชืง ืฉืืฉ ืื ืืืจ โ ืขื ืืชืืืจืืช ื-OAuth ืฉืื, ืืื ืฆืืจื ืืืืืืง ืืคืชื.
ืงืจื ืืช ืืืจืื ื-MCPืืฉืงื ืืืืืืืช ืืื ืืืืื ืืจืืฉืื
ืืคืกืืงื ืืืืืช ืืช i18n ืืืื ืืืจืืืืช. ืืืืืขื ืชืื 5 ืืงืืช, ืื ืืืื. ืฉืืจื ืขื ืืืืจืืช ืืคืืชืื ืฉืืื ืืืืื ื-i18n ืื ืืืฉื.
- ืืืฉืื ืชืื 5 ืืงืืช. ืื ืฆืืืง.
ืืืืืืงื ืชืฆืืจื ืคืฉืื ืืื ืืืชื ืกืืืืชื.
- ืฉืืืจ ืขื ืืืืจืืช ืืคืืชืื
ืชืงืืื ืืืืื i18n ืื ืืืฉื ืืืื.
- ืืฉืืื ืืฉืืืงืื ืืืืืืืื
ืืื ืฆืืจื ืืจืืคืงืืืจืื ื ืืฉืืชื ืืจืืื ืืฉืคืืช ืืืฉืืช.
- SSR ื-SEO ืืืื ืื
ืขืืื ืขื Next.js, Remix, TanStack Start ื-Astro. ืจืื ืืืจ ืืฆื ืืฉืจืช ืืื ืฉืคื ืขืืืจ ืื ืืขื ืืืคืืฉ โ ืืืชื ืืืืจื ืฉื 5 ืืงืืช.
ืืกืืจืชื i18n
i18n-ืืื-ืืคืชื
ืื ืืืฉ ืื ืืกืืื ืืืืืืจ
ืจืง ืืืืืืืงื ืืชืฆืืจื ืืคืฉืื ืืืืชืจ ืืืชื ืืืื ืื ืืฆืืช ืืขืืื.
ืืขืื ืืืชืจ ืืื, ืืกืืื ืฉืื ืืืืืจ ืืืช ืขืืืจื.
1. ืืืืจื ืืกืืกืืช
import * as I18nKeyless from "i18n-keyless-react";
I18nKeyless.init({
API_KEY: "YOUR_API_KEY",
storage: window.localStorage,
languages: {
primary: "en",
supported: ["en", "fr"],
},
});2. ืฉืืืืฉ ืืจืืื
import { I18nKeylessText } from "i18n-keyless-react";
// import { T } from "i18n-keyless-react"; // also works
// Just write in your primary language
<I18nKeylessText>
Welcome to our website
</I18nKeylessText>3. ืฉืืืืฉ ืืฆื ืืฉืจืช (ืืืืืื: Node.js)
import { awaitForTranslationOrFallbackToOriginal, type Lang } from 'i18n-keyless-node';
const title = await awaitForTranslationOrFallbackToOriginal('Come see my app!', user.lang as Lang);
const body = await awaitForTranslationOrFallbackToOriginal('So many new stuff!', user.lang as Lang);
await sendExpoPushNotification({ user, title, body });4. ืืืงืกื ืืืืฅ ืืจืืืืื
import { getTranslation } from "i18n-keyless-react";
export default function Navigation() {
return (
<HomeTabs.Navigator>
<HomeTabs.Screen
options={{ tabBarLabel: getTranslation("Welcome") }}
name="WELCOME"
/>
</HomeTabs.Navigator>
);
}ืืื ืชืจืืืืื ืขืืืืื
i18n-keyless ืืื ืกืคืจืืื, ืืืฉืืืืช ืขื ืฉืืจืืช API, ืืืืคืฉืจืช ืื ืืชืจืื ืืช ืืืงืกื ืฉืื ืืื ืฆืืจื ืืืฉืชืืฉ ืืืคืชืืืช.
ืื ืืชืจืืื ืื ื ืืฆื, ืชืืืฆืข ืืืืืจ ืืกืื ืืจืื ื ื-API ืฉื I18nKeyless ืืื ืืงืื ืืช ืืชืจืืื ืืืืฆืขืืช ืงืจืืื ื-API ืฉื ืืื ื ืืืืืืชืืช.
ืคืขืืื ืื ืืืืฆืขืช ืืืจื ืืื ืืืฆื ืคืืชืื, ืืืื ืฉืืชื ืืงืืื. ืื ืืืืฆืช ืืืช, ืืืืฆืืจ ืจืง ืืืฉืชืืฉ ืืจืืฉืื ืฉืืกืจ ืื ืืชืจืืื ืืจืื ืชืงืื, ืืืืืจ ืืื ืืื ืชืืื ืืืื ื ืืืืืืช ืืืฉืชืืฉืื ืืื ืจืืื ืืขืืื.
ืจืฉืืืช ืืื ืืช ืฉืื ืืื ืฉืคื, ืืื ืืืฆืื ืืืืจ
ืื ืขืืืื ืคืืจืืฉื ืืขืจืืช ืฉืืจืืจ ืืืฉืืช, ืชืืืืจ ืืืืืืช ืืคืชื โ ืืื ืฉืคื, ืืฉื ื ืืื ืืืืช. ืื ืื ืฉืืืืื ืืืชื ืืืืืืกืืฃ ืฉืคืืช. ืื ืืืคืืืงืฆืื.
- ืืขืจืืช ืืฉืงื ืืื ืฉืคื, ืืงืจืืื ืืืช
ืืชืื ืืช ืืขืืืื ืคืขื ืืืช. awaitForTranslation ืืืืืจ ืืืชื ืืื ืฉืคื ืฉืืชื ืืืืจ ืื, ืืชืฆืืจืช ืืื ืืช ืฉืื ืืืื ื ืืืชื ื-EAS ืื fastlane.
- 48 ืฉืคืืช, ืืืืคื ืืืืื ืื ืืช ืืืคืืืงืฆืืืช
pt-BR ื-pt-PT ืื ืฉื ื ืจืฉืืืืช; en-GB, en-AU ื-en-CA ืื ืฉืืืฉื. toAppStoreLocale ืืืงื ืื ืชืจืืื ืืืงืื ืื ืืื.
- ืชืงื ืชืจืืื ืืจืืข ืืื ืฉืืจืืจ
ืืืคืืืงืฆืื, ืืืืจืจืื ืืื ืืืื ืืืืืื ืื ืคืขืื ืื-ืืื ืืช โ ืืื ืื ืืืช ืชืืงืื ืื, ืืื ืืืงืืจืช ืื ืืช. ืืจืฉืืื, ืืคืขื ืืืืฉ ืืช ื-push.
- ืื ืืืืจ ืืืืื
ืืชืจืื ืืืื ืืขืจื 0.10 ืืืจื ืืืืื. 2,000 ืืืจืืืืช ืืคืื 10 ืฉืคืืช ืื ืชืงืฆืื ืฉืืื ืืืคืชื ืขืฆืืื. ืืื ืื ืกืืคืจืื ืืืืื.
ืืืชืืื ืืืื ืืืคืืืงืฆืืืช ืืงืกืคื
// store.config.js โ EAS Metadata awaits an async config
const { init, awaitForTranslation, toAppStoreLocale } = require("i18n-keyless-node");
const LANGS = ["en", "fr", "de", "ja", "pt-BR"];
const DESCRIPTION = "Bibi translates your app while you sleepโฆ";
module.exports = async () => {
init({ API_KEY: process.env.I18N_KEYLESS_KEY, languages: { primary: "en", supported: LANGS } });
const info = {};
for (const lang of LANGS) {
info[toAppStoreLocale(lang)] = {
title: await awaitForTranslation("Bibi", lang, { context: "App Store app name, 30 characters max" }),
subtitle: await awaitForTranslation("Keyless i18n", lang, { context: "App Store subtitle, 30 characters max" }),
description: await awaitForTranslation(DESCRIPTION, lang, { context: "App Store description" }),
};
}
return { configVersion: 0, apple: { info } };
};ืืฉืืื ืืื ืืืชืืช ืงืืฆื ืืื-ื ืชืื ืื ืฉื fastlane ื- Google Play. ืืืชืืืช ืืืืืืช ืื ืื ืื: ืืืืจ ืืช ืืืืื ืืืงืฉืจ ืืืืืง ืืช ืืืืจื ืืคื ื ืฉืืชื ืืืืฃ.
ืืจืื ืืื ืืื ืืจืืงืืืื
ืจืื ืืืฆื i18n-keyless ืคืืขื ืืืื ืืืช
ืคืชื ืคืจืืืงื StackBlitz ืื ืื ืืชื ืืขืจืืื ืืื ืืจืืืช ืชืจืืืืื ื ืคืชืจืื ืชืื ืืื ืืงืืื.
ืืคืชืืื ืืืืืื ืคืฉืืืช
ืจืื ืื ืืืจืื ืืืืจืื ืขื i18n-keyless
ืืืืชื ืืกืืื ืืืืกืืฃ i18n ื-MVP ืฉืื ื ืืชืื 5 ืืงืืช ืืืื. ืืฉืงื ื ื-7 ืฉืคืืช ืืื ืืื ืคืืชืื ื ืืกืฃ. ืืกืืก ืืงืื ืฉืื ื ื ืฉืืจ ื ืงื ืืืืื ื ืืืืืื ืืืชืืงื ืืื ืืืช ืชืืื ืืช ืืืงืื ืื ืืืื ืืคืชืืืช ืืชืจืืื.
Jamie Smith
CTO ืืกืืืจืืืค ืืื ืื
ืืขืืืก ืืื ืืื ืฉื ื ืืืื ืืคืชืืืช ืืชืจืืื ืืจืก ืืช ืืคืจืืืืงืืืืืืช ืฉืื ื. ืขื i18n-keyless, ืื ืื ื ืคืฉืื ืืืชืืื ืืฉืคื ืืืขืืช ืืื ืืืจ ืขืืื. ืื ืืืืื ืฉ-i18n ืืืื ืื ืงืืื ืืชืืืื ืืขืืืื ืฉืื ื ืืืชืจ.
Alex Lee
ืืคืชื ืจืืฉื ื-Another Cool Startup
ืืืขื ืืืื ื ืืช ื-i18n ืืืืฆืจ ืฉืื ื ืขื ืืืจื ืืฉืงืชื. ืขื i18n-keyless, ืืืืขื ื ืืืชื ืืฉืื ื-MVP ืืืฉืงื ื ืืืชื ืืืืืืืช ืืืจ ืืืืื ืืจืืฉืื. ืืชืฉืืื ืขื ืืืฉืงืขื ืืืืชื ืืืืืื.
Maria Rodriguez
ืืืืกื ื-GlobalApp
ืชืืืืจ ืคืฉืื ืืฆืคืื
ืืืืจ ืงืืืข ืืื ืขืืืจ ืืกืืื ืฉืื.
ืื ืชืืื ื ืืื ืชืืื ืืช.
ืืื ืขืืืืช ืืคื ืืืื, ืืื ืืืฉืื ืืกืืืื ืื.
ืขื 1,000 ืืฉืชืืฉืื ืคืขืืืื ืืืืืฉ
ืืืคืืืงืฆืืืช ืืื ืื ืืืืฆืจืื ืืืฉืื
ืขื 5,000 ืืฉืชืืฉืื ืคืขืืืื ืืืืืฉ
ืืืคืืืงืฆืืืช ืฉืืืืขืืช ืืงืื ืืืขื ืฉืืื
ืขื 50,000 ืืฉืชืืฉืื ืคืขืืืื ืืืืืฉ
ืืืคืืืงืฆืืืช ืขื ืชื ืืขื ืืืฉืืช
ืขื 500,000 ืืฉืชืืฉืื ืคืขืืืื ืืืืฉืืื
ืืืืฆืจืื ืืงื ื ืืืื
ืื ืชืืื ืืช ืืืืืช:
ืื 48 ืืฉืคืืช. ืื ืืขืืื, ืืืื ืืจืืฉืื
ืชืจืืืืื ืืืชื ืืืืืืื, ืืืื ืืื ื ืืืืืืชืืช. ืืืจืืืืช ืืืฉืืช ืืชืืจืืืืช ืืืืคื ืขืฆืืื ืืืืฆืืจ
ืชืจืืื ืื ืฉื ืชืืื ืฉื ืืฆืจ ืขื ืืื ืืฉืชืืฉืื (UGC)
ืฉืืจื, ืืืจื ืื ืืืื ืืื ืขืช
ืืืชืจ ื-500,000 ืืฉืชืืฉืื ืคืขืืืื ืืืืฉืืื? ืฆืืจ ืงืฉืจ
ืืื ืขืืื ืืืคืืืงืฆืื ืืื ืืืงืื ืืืจ
ืืื ืืช ืฉื ื ืืืืืื ืื. ืืืฉืืื ืืช ืืื ืขืืืจ ืืืคืืืงืฆืื ืฉืื ืืื 48 ืืฉืคืืช.
| ืคืชืจืื | ืืืฉืืื ืืืืืฉื ืฉืื | ืืชื ืืฉืื ืืคื | ืชืจืืื | ืฉืคืืช |
|---|---|---|---|---|
| i18n-keylessืื ืื ื | โฌ4/ ืืืืฉ | ืืฉืชืืฉืื ืคืขืืืื ืืืืฉืืื ื ืืฆืืื ื ืืฆืืื. | ืืื ื ืืืืืืชืืช, ืืืชื ืืืืื, ืืืื | ืื 48, ืืื ืืืืื ืืจืืฉืื |
| Crowdin | โฌ88/ ืืืืฉ1 | ืืืืื ืืืจืืืช: ืืืืืื ืฉืื ร 48 | Crowdin AI, ืืชืื ืืืกื | ืืชื ืืืกืืฃ ืื ืืื |
| Intlayer | โฌ27/ ืืืืฉ2 | ืืืฉืืื ืืคืจืืืงืืื | ืืฆืืจืช ืืื ื ืืืืืืชืืช, ืืชืื ืืืกื | ืืชื ืืืกืืฃ ืื ืืื |
| Lingo.dev | โฌ91/ ืืืืฉ3 | ืขืืื ืืกืืกืืช, ืืืืืจ ืืื ืืกืืืื ื ืืื ื ืืืืืืชืืช | ืืืฉืืื ืฉื ืืืื ื ืืืืืืืชืืช ืืืื ืืฉืืจืืช ืืืื | ืืชื ืืืกืืฃ ืื ืืื |
| Locize | โฌ77/ ืืืืฉ4 | ืืืืื ร 48, ืืืืจืืืช CDN | ืืชื ืืืื ืืช ืืืคืชื ื-AI ืฉืื | 10 ืืชืืื ืืช ืืืืืื ืืืืชืจ ืฉืคืืจืกืื |
| Lokalise | โฌ132/ ืืืืฉ5 | ืืืฉืืื, ืืื ืืคืชืืืช | ืืชืจืืืื ืืืืืืื ืื ืคืจื | ืืชื ืืืกืืฃ ืื ืืื |
| Phrase | โฌ483/ ืืืืฉ6 | ืืืฉืืื, ืืืืืจ ืืื ืืืืื ืื ืืืืืช | ื-0.06 ืืืืจ ืืืืื, ืืืืฉื ืื ืคืจื | ืืชื ืืืกืืฃ ืื ืืื |
| Smartling | โฌ552/ ืืืืฉ7 | ืื ืืืื, ืื ืฉืคื | ืชืจืืื ืืื ื ืืืืืืชืืช ืืื ื-0.06 ืืืืจ ืืืืื | ืืชื ืืืกืืฃ ืื ืืื |
| Tolgee | โฌ49/ ืืืืฉ8 | ืืคืชืืืช ืืืืฉืืื | ืงืจืืืื ืชืจืืื ืืืื ื | ืืชื ืืืื ืื ืืื |
| Weglot | โฌ1,678/ ืืืืฉ9 | ืืืืื ร ืฉืคืืช, ืืืฃ ืืื ืืจื ื | ืืืื ื, ืืชืื ืืืกื | 20 ืืชืืื ืืช ืืืืืื ืืืืชืจ ืฉืคืืจืกืื |
ืืืืจื ืืจืฉืืื ืืฆืืืืจืืื, ื ืงืจืื ืืืืืืกื 2026. ืืกืคืงืื ืืฉื ืื ืืืชื, ืื ืื ื ืืืงื. ืื ืืฉืืื ืืช ืืื ืงืจืืืชื ื ืฉื ืืกืืื ืฉืคืืจืกื, ืืื ื ืชืืื ืืืงืืื ืืช ืืชืืื ืืช ืืชืฉืืื ืืืืื ืืืืชืจ ืฉืืฉืืืจื ืืช ืืืคืืืงืฆืื ืฉืื ืคืขืืื. ืืืฉืจ ืกืคืง ืืืฉื ืืช ืืชืจืืื ืืจืืฉืื ืคืขื ืืืช, ืื ื ืืคืืจืื ืืืชื ืขื ืคื ื ืฉื ืื ืขืฉืจ ืืืืฉืื.
1 Crowdin ืืคืจืกื 44 ืืืจื ืืืืืฉ ืขืืืจ 60,000 ืืืืื ืืืจืืืช ืืชืืื ืืช Pro, ืืืืฉื ืฉื ืชื. ืืืื ืืืจืืช ืืื ืืืื ืืืช ืืฉืคื ืืขื ืืืช. ืื ื ืืืืจืื ืขื ืืืืจ ืืืืืง ืืื ืืขื 60,000.
2 Intlayer ืืื ืงืื ืคืชืื. 29 ืืืืืจืื ืืืืืฉ ืจืืืฉืื ืืช ืืขืจืืช ื ืืืื ืืชืืื (CMS) ืืืช ืืืกืช ืืฆืืจืช ืืืื ื ืืืืืืืชืืช. ืืขืืจ ืืืืกื, ืชืืืื ืืืฉืชืืฉ ืืืคืชื ื-AI ืฉืืื, ืืืื ื ืืกืืฃ ืืช ืืืฉืืื ืืช ืฉื ืืืืื ื-10 ืืืืจ ืืื ืืืืืื ืืกืืืื ืื, ืืืคืืืจืื ืขื ืคื ื ืฉื ืื ืขืฉืจ ืืืืฉืื.
3 Lingo.dev ืืคืจืกื 99 ืืืืจ ืืืืืฉ ืื ืืกืฃ ื-2 ืืืืจ ืืื ืืืืืื ืืกืืืื ื ืชืฉืชืืช, ืืืื ืืขืืืจ ืืืื ืืช ืืฉืืื ืืืืื. ืื ื ืกืืคืจืื 1.4 ืืกืืืื ืื ืืื ืืืื ื-10 ืืืืจ ืืื ืืืืืื ืืกืืืื ื ืขืืืช ืืืืื. ืืขืืื ืืืกืืกืืช ืืื ืจืื ืืกืืื ืืื.
4 Locize ืืคืจืกื 7, 19 ื-49 ืืืจื ืืืืืฉ ืขืืืจ 15,000, 30,000 ื-60,000 ืืืืื, ืขื 1, 3 ื-5 ืืืืืื ืืืจืืืช CDN. ืืขืืจ ืืื, ืืื ืืคืจืกื 0.50 ืืืจื ืืื 1,000 ืืืืื ื ืืกืคืืช ื-5 ืืืจื ืืื ืืืืืื ืืืจืืืช ื ืืกืคืืช. ืื ื ืกืืคืจืื ืฉืืืฉืื ืืืจืืืช ืืื ืืฉืชืืฉ ืืื ืืืืฉ. ืืฃ ืชืืื ืืช ืืคืืจืกืืช ืืื ื ืชืืืืช ื-48 ืฉืคืืช.
5 Lokalise ืืคืจืกืืช $144, $375 ื-$999 ืืืืืฉ, ืืื ืืืืืช ืืคืชืืืช. ืื ื ืื ืืืื ืฉืืฉืืืฉื ืชืืื ืืืช ืืืืืืช 5,000, 20,000 ื-100,000 ืืคืชืืืช, ืืื ืฉืชืื ืขืฉืจื ืืืืื ืืื ืืคืชื. ืชืจืืื ืื ืืฉื ืืืืื ืื ืคืจื.
6 ืืืืืื ืืคืจืกื 525 ืืืืจ ืืืืืฉ ืขืืืจ ืืืืืื ืืืืื ืื ืืืืืช ืืชืืื ืืช ืืชืืื ื, ื-1,245 ืืืืจ ืขืืืจ 3 ืืืืืื. ืื ื ืกืืคืจืื ืืืื ืื ืืืืช ืืืช ืืื ืืืื ืืื ืฉืคื, ืืืืืจืื ืขื ืืืืืง ืฉื 1,245 ืืืืจ ืืขืื ืขืืืจ 3 ืืืืืื.
7 Smartling ืื ืืคืจืกื ืืืืจ ืืคืืืคืืจืื. ืื ื ืกืืคืจืื ืจืง ืืช ืชืจืืื ืืืื ื ืืืืืืืชืืช, ืืืืืจ ืืืคืืจืกื ืฉื 0.06 ืืืืจ ืืืืื, ืืืชืคืจืกื ืขื ืคื ื ืฉื ืื ืขืฉืจ ืืืืฉืื. ืืืฉืืื ืืช ืืืืืชืืช ืฉืื ืืืืื ืืืชืจ.
8 Tolgee ืืืื ืขืืืจ ืืคืชืืืช, ืื ืืืืื, ืืืื ืื ื ืกืืคืจืื ืฉืชืื ืขืฉืจื ืืืืื ืืื ืืคืชื. ืืื ืืคืจืกืืช โฌ49 ืขืืืจ 2,000 ืืคืชืืืช, โฌ179 ืขืืืจ 5,000 ื-โฌ499 ืขืืืจ 20,000, ืืืืืืื ืืื ืฉื ื. ืืขื ืืื ืื ื ืืืืจืื ืขื ืืืืืง ืฉื โฌ499. ืงืจืืืืื ืืชืจืืื ืืืื ื ื ืกืคืจืื ืื ืคืจื.
9 Weglot ืืชืจืื ืืฃ ืืื ืืจื ื, ืื ืืคืืืงืฆืื. ืืชืืื ืืช ืืืืืื ืืืืชืจ ืฉืื ืฉืคืืจืกืื ืืื 699 ืืืจื ืืืืืฉ ื-20 ืฉืคืืช, ืื ืฉืื ื ืืงืืืืื ืืช ืืืืืจ ืืื ื-48 ืฉืคืืช. ืืืืืื ืฉืื ืืชืืืืืช ืืื ืืืช ืืืชืืื ืืืช ืืืื.
ืื ืฉืืจื ืืืจืช ืืืื ืขื ืืืืฆืจ ืฉืื. ืืืืืจ ืฉืื ื ืืื ืงืืืข.
ืฆืคื ืืืื
ืฆืคื ืืกืจืืื ืืงืฆืจ ืืื ืืื ืืจืืืช ืืช i18n-keyless ืืคืขืืื
ืงืื ืืคืชื API ืืืคืืืงืฆืื ืืืช
ืืืืืืฉ ืืืื ืฉืื ื-i18n ื-5 ืืงืืช. iykyk.