Остаточний DX для i18n

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 година часу старшого розробника

Вперед і назад для кожного нового ключа: 1 хвилина на ключ, x500 ключів, x2 мови = 17 годин

Завдяки i18n-keyless вам зовсім не потрібно турбуватися про систему інтернаціоналізації. Ви можете піти на пляж і замовити мохіто.

Сьогодні більшість систем використовують ключі для перекладу тексту

Це боляче створювати. Це боляче підтримувати.

Коли ви бачите текст у додатку і хочете його оновити, вам потрібно знайти відповідний ключ.

Завдяки i18n-keyless вам зовсім не потрібно турбуватися про систему i18n. Використовуйте свій мозок для чогось цікавішого.

Залиште переклади на AI

З ключовою системою вам потрібно керувати перекладами в додатку.

В іншому випадку ваші користувачі побачать someheader.welcome.title у своєму додатку.

За допомогою i18n-keyless вам зовсім не потрібно турбуватися про систему інтернаціоналізації. Просто пишіть гарні заголовки, зосередьтеся на маркетингу та отримуйте продажі.

Кодові бази красиві... поки ключі i18n не заражені

З ключовою системою, коли ви читаєте код і вміст, вам потрібно читати ключі, а не природну мову.

Іноді вам слід зробити виправлення, оскільки речення не є граматично правильним. Але ви цього не знаєте, бо читаєте ключі.

Завдяки i18n-keyless вам не потрібно турбуватися про систему i18n взагалі. Кодова база залишається гарною.

Додайте i18n з першого дня без жодного впливу на темп розробки
Створено для агентів кодування

MCP-сервер для покриття всіх ваших потреб у міжнародній локалізації

Ще шість причин, чому система настільки оптимізована для агенційного кодування.

Немає імені для вигадки

Ключ — це рішення щодо іменування, у якого немає правильної відповіді. Два агенти пишуть 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
Ідеально для MVP

Запускайте глобально з першого дня

Припиніть відкладати інтернаціоналізацію (i18n) через складність. Реалізуйте її за 5 хвилин, а не днів. Зберігайте швидкість розробки, ніби i18n не було впроваджено.

  • Реалізація за 5 хвилин. Не жартую.

    Один простий об'єкт конфігурації та ви готові.

  • Зберігайте швидкість розробки

    Кодуючи так, ніби i18n взагалі не було реалізовано.

  • Відправити на світові ринки

    Не потрібно рефакторити під час масштабування на нові мови.

  • SSR та SEO готові

    Працює з Next.js, Remix, TanStack Start та Astro. Рендеринг на сервері будь-якої мови для пошукових систем — той самий 5-хвилинний налаштування.

Традиційний i18n

Налаштування системи ключів (1 година)
Створіть файли перекладу (2 години)
Рефакторинг компонентів (4 години)
Перевірте всі мови (2 години)
Виправте проблеми з макетом (3 години)
12+ годин роботи

i18n-безключовий

Додати пакет (1 хв)
Налаштуйте за допомогою API-ключа (2 хв)
Обгорнути текстові компоненти (2 хв)
5 хвилин роботи
Як це працює

Налаштувати це простіше простого

Лише найпростіший об'єкт конфігурації, і ви готові вийти на глобальний рівень.
І ще більше, ваш агент налаштує це для вас.

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 штучного інтелекту.

Цю операцію зазвичай виконують у режимі розробки, коли ви пишете код. Якщо ви пропустили одну, у продакшені лише перший користувач, якому бракує перекладу, побачить збою, після чого він миттєво стане доступним для користувачів у всьому світі.

App Store та Google Play

Ваш список магазину всіма мовами, при кожному випуску

Кожне оновлення означає нові випускні нотатки, опис і ключові слова — для кожної мови в обох магазинах. Ось що заважає вам додавати мови. Не додаток.

  • Нотатки про випуски для кожної мови, в одному запиті

    Напишіть оновлення один раз. awaitForTranslation повертає його кожною мовою, якою ви продаєте, а конфігурація вашого магазину передає його до EAS або fastlane.

  • 48 мов, зіставлені зі слотами App Store

    pt-BR і pt-PT — це два списки; en-GB, en-AU і en-CA — три. toAppStoreLocale розміщує кожен переклад у потрібному місці.

  • Виправте поганий переклад без випуску

    У додатку один оверрайд на панелі керування активний одночасно — без hotfix збірки, без огляду магазину. У списку повторно запустіть push.

  • Не тарифіковано за словами

    Перекладач бере близько 0,10 € за слово. 2000 рядків помножити на 10 мов — це бюджет, який не потягне один розробник. Тут слова не враховуються.

Повна інструкція для додатка Expo

// 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 мовами без додаткового часу розробки. Наша кодова база залишилася чистою, і ми змогли зосередитися на створенні функцій замість управління ключами перекладу.

JS

Jamie Smith

CTO у крутому стартапі

Психологічне навантаження від управління ключами перекладу знищувало нашу продуктивність. Завдяки i18n-keyless ми просто пишемо природною мовою, і все працює. Ніби i18n взагалі не існує в нашому робочому процесі.

AL

Alex Lee

Головний розробник у Another Cool Startup

Ми збиралися відкласти інтернаціоналізацію нашого продукту до після запуску. Завдяки i18n-keyless ми впровадили її ще на етапі MVP та запустили глобально з першого дня. Рентабельність була неймовірною.

MR

Maria Rodriguez

Засновник у GlobalApp

Встановлення цін

Проста, прогнозована ціноутворення

Одна фіксована ціна для вашої шкали.
Кожна функція у всіх планах.
Без зборів за слово, без обчислення токенів.

Закуска
4/ місяць

До 1 000 активних користувачів на місяць

Для інді-додатків та нових продуктів

Інді
9/ місяць

До 5 000 активних користувачів на місяць

Для додатків, які знаходять свою аудиторію

Ріст
29/ місяць

До 50 000 активних користувачів на місяць

Для додатків з реальною привабливістю

Шкала
99/ місяць

До 500 000 активних користувачів на місяць

Для продуктів у масштабі

Кожен план включає:

Усі 48 мов. Увесь світ, з першого дня

Необмежена кількість перекладів, включно з ШІ. Нові рядки перекладаються автоматично у виробництві

Прямий переклад контенту, створеного користувачами (UGC)

Оновлюйте, знижуйте або скасовуйте в будь-який час

Понад 500 000 активних користувачів на місяць? Зв'яжіться з нами

Скільки коштує та ж сама програма десь ще

Пересуньте обидва повзунки. Рахунок призначений для вашого додатка всіма 48 мовами.

1,000
2,500
РішенняВаш щомісячний рахунокВи платите заПерекладМови
i18n-keylessми€4/ місяцьЩомісячно активні користувачі
Перемога перемога.
ШІ, безліміт, включеноУсі 48, з першого дня
Crowdin€88/ місяць1Розміщені слова: ваші слова × 48
Crowdin AI, усередині квотиВи додаєте кожен
Intlayer€27/ місяць2Місця та проекти
Генерація ШІ, у межах квотиВи додаєте кожен
Lingo.dev€91/ місяць3Базовий збір, потім токени AI
Рахунок за ШІ надсилається вам напрямуВи додаєте кожен
Locize€77/ місяць4Слова × 48 та завантаження CDN
Ви приносите свій власний ключ AI10 у найбільшому опублікованому плані
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 та квоту генерації ШІ. Якщо ви перевищуєте квоту, ви можете використовувати власний ключ ШІ, тому ми додаємо рахунок за модель у розмірі 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 мільйон керованих слів у програмному плані, та 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.