DX terbaik untuk i18n

Yang termurah dan paling efisien i18n untuk pemrograman agen

i18n tanpa kunci agen pengkodean Anda mendapatkannya dengan benar pertama kali: satu file untuk diedit, tidak ada JSON lokal untuk dimuat, tidak ada konflik penggabungan, mulai dari 4 euro per bulan.

Pengaturan 5 Menit

Implementasi i18n lengkap Anda dalam 5 menit. Bukan bercanda.

Sistem tanpa kunci

Otak Anda seharusnya tidak terlibat dalam tugas-tugas yang tidak berarti seperti ini.

Global sejak hari pertama

Kirim ke pasar internasional tanpa upaya ekstra.

Atur i18n, jaga basis kode Anda tetap bersih dan kirim dengan cepat

Ada banyak PITA dengan solusi i18n saat ini. Rasa sakitnya begitu besar sehingga Anda menunda i18n sebanyak mungkin.

Ini menghabiskan waktu yang seharusnya Anda habiskan di pantai

Atur sistem kunci: setidaknya 1 jam waktu pengembang senior

Maju mundur untuk setiap kunci baru: 1 menit per kunci, x500 kunci, x2 bahasa = 17 jam

Dengan i18n-keyless, Anda tidak perlu memikirkan sistem i18n sama sekali. Anda bisa pergi ke pantai dan memesan mojito.

Hari ini sebagian besar sistem menggunakan kunci untuk menerjemahkan teks

Menyakitkan untuk dihasilkan. Menyakitkan untuk dipertahankan.

Ketika Anda melihat teks di aplikasi, dan Anda ingin memperbaruinya, Anda perlu menemukan kunci yang sesuai.

Dengan i18n-keyless, Anda tidak perlu memikirkan sistem i18n sama sekali. Gunakan otak Anda untuk sesuatu yang lebih menarik.

Biarkan terjemahan ke AI

Dengan sistem kunci, Anda perlu mengelola terjemahan di aplikasi.

Jika tidak, pengguna Anda akan melihat someheader.welcome.title di aplikasi mereka.

Dengan i18n-keyless, Anda tidak perlu memikirkan sistem i18n sama sekali. Cukup tulis judul yang bagus, fokus pada pemasaran, dan dapatkan penjualan.

Basis kode itu indah... sampai kunci i18n terinfeksi

Dengan sistem kunci, ketika Anda membaca kode dan konten, Anda harus membaca kunci, bukan bahasa alami.

Terkadang Anda harus melakukan perbaikan karena sebuah kalimat tidak benar secara tata bahasa. Tetapi Anda tidak tahu itu karena Anda membaca kunci.

Dengan i18n-keyless, Anda tidak perlu memikirkan sistem i18n sama sekali. Basis kode tetap indah.

Tambahkan i18n sejak hari pertama tanpa dampak pada kecepatan pengembangan Anda
Dibuat untuk agen pengkodean

Server MCP untuk memenuhi semua kebutuhan i18n Anda

Enam alasan lain mengapa sistem sangat dioptimalkan untuk pemrograman agen.

Tidak ada nama untuk diciptakan

Kunci adalah keputusan penamaan tanpa jawaban yang benar. Dua agen menulis login.submit dan auth.button.send untuk tombol yang sama. Tanpa kunci, tidak ada keputusan untuk dibuat.

Satu berkas untuk diedit, bukan dua puluh

Perubahan berbasis kunci memengaruhi komponen dan setiap file JSON lokalisasi, serta agen melupakan file. Di sini, perubahan salinan adalah pengeditan satu berkas.

Nol konflik penggabungan dalam armada agen

Lima agen di lima cabang semuanya mengedit en.json: konflik yang dijamin. Tidak ada file yang dibagikan, jadi worktrees dan agen latar belakang tidak pernah bertabrakan.

Murah dalam token

Untuk menggunakan kembali kunci, agen harus memuat file lokal ke dalam konteks pada setiap pengeditan. Muatan tanpa kunci tidak melakukan apa-apa: teks sudah ada di komponen.

Perbedaan yang terbaca

Permintaan tarik menunjukkan kalimat yang nyata. Manusia atau agen ulasan dapat menilai salinan tanpa menggali apa yang dimaksud oleh kunci.

Satu aturan di CLAUDE.md Anda

Setiap aturan i18n yang Anda tulis adalah aturan yang dapat dilanggar oleh agen. Aturan ini hanya membutuhkan satu baris — dan fallback adalah teks asli, sehingga kesalahan tidak akan menampilkan a.b.c di layar.

Satu-satunya aturan i18n yang dibutuhkan agen Anda

# CLAUDE.md
Write the UI copy in English and wrap it in <T>…</T> from i18n-keyless-react.
That is the whole i18n setup.

Agen Anda dapat mengoperasikannya, bukan hanya menulisnya

Melalui server MCP, agen mencantumkan terjemahan yang hilang, membaca satu, mengganti yang buruk, atau mengimpor salinan yang sudah Anda miliki — dengan login OAuth sendiri, tanpa perlu menempelkan kunci.

Baca panduan MCP
Sempurna untuk MVP

Luncurkan secara global sejak hari pertama

Berhentilah menunda i18n karena kompleksitas. Terapkan dalam 5 menit, bukan hari. Pertahankan kecepatan pengembangan Anda seolah-olah i18n tidak diimplementasikan.

  • Implementasi dalam 5 menit. Tidak bercanda.

    Satu objek konfigurasi sederhana dan Anda sudah selesai.

  • Pertahankan kecepatan pengembangan

    Kodekan seolah-olah i18n sama sekali tidak diimplementasikan.

  • Kirim ke pasar global

    Tidak perlu refaktorisasi saat Anda meningkatkan skala ke bahasa baru.

  • SSR & SEO siap

    Bekerja dengan Next.js, Remix, TanStack Start, dan Astro. Render server untuk mesin pencari dalam bahasa apa pun — pengaturan 5 menit yang sama.

Tradisional i18n

Sistem kunci setup (1 jam)
Buat file terjemahan (2 jam)
Refaktor komponen (4 jam)
Uji semua bahasa (2 jam)
Perbaiki masalah tata letak (3 jam)
12+ jam kerja

i18n-tanpa-kunci

Tambahkan paket (1 menit)
Konfigurasikan dengan kunci API (2 menit)
Bungkus komponen teks (2 menit)
5 menit kerja
Cara kerjanya

Tidak sulit untuk mengaturnya

Hanya objek konfigurasi paling sederhana dan Anda siap untuk go global.
Dan bahkan lebih, agen Anda akan mengaturnya untuk Anda.

1. Penyiapan Dasar

import * as I18nKeyless from "i18n-keyless-react";

I18nKeyless.init({
  API_KEY: "YOUR_API_KEY",
  storage: window.localStorage,
  languages: {
    primary: "en",
    supported: ["en", "fr"],
  },
});

2. Penggunaan Komponen (React di sini; sama di Vue, Angular, Flutter, Swift, dan Kotlin)

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. Penggunaan sisi server (di sini Node.js; panggilan yang sama di Laravel, Rails, Python, dan Go)

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. Untuk teks di luar komponen

import { getTranslation } from "i18n-keyless-react";

export default function Navigation() {
  return (
    <HomeTabs.Navigator>
      <HomeTabs.Screen
        options={{ tabBarLabel: getTranslation("Welcome") }}
        name="WELCOME"
      />
    </HomeTabs.Navigator>
  );
}

5. Pilih SDK Anda: satu baris instalasi, API yang sama di mana saja

  • React, React Native, Expo, Next.js, Remix, TanStack Start, Astronpm install i18n-keyless-react
  • Vue, Nuxtnpm install i18n-keyless-vue
  • Angularnpm install i18n-keyless-angular
  • Plain HTML, Svelte, Alpine, htmx, one script tagnpm install i18n-keyless-browser
  • Node.jsnpm install i18n-keyless-node
  • Laravel, PHPcomposer require i18n-keyless/laravel
  • Rails, Rubybundle add i18n-keyless-rails
  • Flutter, Dartflutter pub add i18n_keyless
  • Swift, iOS, macOS, VaporSwiftPM: arnaudambro/i18n-keyless-swift
  • Kotlin, Android, Ktorio.github.arnaudambro:i18n-keyless-kotlin
  • Python, Django, Flask, FastAPIpip install i18n-keyless
  • Gogo get github.com/arnaudambro/i18n-keyless/ports/go/v3

Pengaturan cepat untuk masing-masing dua belas SDK

Bagaimana terjemahan bekerja

i18n-keyless adalah sebuah perpustakaan, dikombinasikan dengan layanan API, yang memungkinkan Anda menerjemahkan teks Anda tanpa perlu menggunakan kunci.

Jika terjemahan tidak ditemukan, akan dilakukan pengambilan asinkron ke API I18nKeyless untuk mendapatkan terjemahan melalui panggilan API AI.

Operasi ini biasanya dilakukan dalam mode pengembangan, saat Anda sedang coding. Jika Anda melewatkan satu, di produksi hanya pengguna pertama yang tidak memiliki terjemahan akan melihat gangguan, lalu akan segera tersedia untuk pengguna di seluruh dunia.

App Store & Google Play

Daftar toko Anda dalam setiap bahasa, pada setiap rilis

Setiap pembaruan berarti catatan rilis baru, deskripsi, dan kata kunci — untuk setiap bahasa, di kedua toko. Itulah yang menghalangi Anda untuk menambahkan bahasa. Bukan aplikasinya.

  • Catatan rilis untuk setiap bahasa, dalam satu panggilan

    Tulis sekali pembaruan. awaitForTranslation mengembalikannya dalam setiap bahasa yang Anda jual, dan konfigurasi toko Anda meneruskannya ke EAS atau fastlane.

  • 48 bahasa, dipetakan ke slot App Store

    pt-BR dan pt-PT adalah dua daftar; en-GB, en-AU, dan en-CA adalah tiga. toAppStoreLocale menempatkan setiap terjemahan di tempat yang tepat.

  • Perbaiki terjemahan buruk tanpa rilis

    Di aplikasi, satu override di dasbor aktif satu per satu — tidak ada build hotfix, tidak ada ulasan toko. Di daftar, jalankan ulang push.

  • Tidak dihargai per kata

    Penerjemah mengenakan biaya sekitar €0,10 per kata. 2.000 string dikalikan dengan 10 bahasa adalah anggaran yang tidak dimiliki oleh pengembang solo. Di sini kata-kata tidak dihitung.

Resep lengkap untuk aplikasi 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 } };
};

Panggilan yang sama menulis file metadata fastlane untuk Google Play. Huruf besar bersifat anjuran: letakkan batasan dalam konteks dan periksa panjangnya sebelum Anda dorong.

Coba Sendiri

Kotak Pasir Interaktif

Lihat bagaimana i18n-keyless bekerja secara real-time

Buka proyek StackBlitz langsung yang dapat diedit untuk melihat terjemahan terpecahkan saat Anda mengetik.

Mengapa saya membangun ini

Saya selalu menunda internasionalisasi sampai klien saya menginginkannya begitu keras sehingga saya tidak punya pilihan. Saya benci membaca kode dengan kunci internasionalisasi di dalamnya, dan saya benci memelihara file JSON sama seperti melihat betapa mahalnya penyedia terjemahan internasionalisasi. Jadi saya harus membangun milik saya sendiri, dan SAYA SANGAT MENYUKAINYA. Semua aplikasi saya sekarang sudah internasionalisasi secara default.

AA

Arnaud Ambroselli

Pendiri i18n-keyless

Ingin menambahkan milikmu?

Kesaksian terhadap langganan gratis. Minta milik Anda!

Kirim kesaksian saya
Penetapan harga

Harga sederhana dan dapat diprediksi

Satu harga tetap untuk skala Anda.
Setiap fitur di setiap rencana.
Tidak ada biaya per kata, tidak ada perhitungan token.

Hidangan pembuka
4/ bulan

Hingga 1.000 pengguna aktif bulanan

Untuk aplikasi indie dan produk baru

Indie
9/ bulan

Hingga 5.000 pengguna aktif bulanan

Untuk aplikasi yang menemukan audiensnya

Pertumbuhan
29/ bulan

Hingga 50.000 pengguna aktif bulanan

Untuk aplikasi dengan traksi nyata

Skala
99/ bulan

Hingga 500.000 pengguna aktif bulanan

Untuk produk di skala besar

Mandiri

Atau milikilah: gratis untuk diinstal, €30 sekali untuk proyek tanpa batas.

API, dasbor, dan server MCP yang sama, dalam satu kontainer Docker dengan SQLite, di server Anda, dengan kunci Mistral Anda sendiri. Satu proyek gratis selamanya; lisensi seumur hidup €30 membuka proyek tak terbatas. Tanpa langganan, tanpa batas penggunaan, pembaruan seumur hidup.

Beli lisensi seumur hidup

Setiap rencana mencakup:

Semua 48 bahasa. Seluruh dunia, sejak hari pertama

Terjemahan tanpa batas, termasuk AI. String baru menerjemahkan diri mereka sendiri dalam produksi

Terjemahan langsung konten yang dibuat pengguna (UGC)

Tingkatkan, turunkan, atau batalkan kapan saja

Lebih dari 500.000 pengguna aktif bulanan? Hubungi kami

Berapa biaya aplikasi yang sama di tempat lain

Geser kedua penggeser. Tagihan untuk aplikasi Anda dalam semua 48 bahasa.

1,000
2,500
SolusiTagihan bulanan AndaAnda membayar perTerjemahanBahasa
i18n-keylesskami€4/ bulanPengguna aktif bulanan
Menang menang.
AI, tanpa batas, disertakanSemua 48, sejak hari pertama
Crowdin€88/ bulan1Kata yang di-host: kata-kata Anda × 48
Crowdin AI, di dalam kuotaAnda menambahkan masing-masing
Intlayer€27/ bulan2Kursi dan proyek
Generasi AI, di dalam kuotaAnda menambahkan masing-masing
Lingo.dev€91/ bulan3Biaya dasar, lalu token AI
Tagihan AI langsung menuju ke AndaAnda menambahkan masing-masing
Locize€77/ bulan4Kata × 48, dan unduhan CDN
Anda membawa kunci AI Anda sendiri10 pada rencana terbesar yang diterbitkan
Lokalise€132/ bulan5Kursi, lalu kunci
Penerjemah ditagih secara terpisahAnda menambahkan masing-masing
Phrase€483/ bulan6Kursi, lalu kata-kata yang dikelola
Dari $0.06 per kata, ditagih secara terpisahAnda menambahkan masing-masing
Smartling€552/ bulan7Setiap kata, setiap bahasa
Terjemahan AI dari $0,06 per kataAnda menambahkan masing-masing
Tolgee€49/ bulan8Kunci dan kursi
Kredit terjemahan mesinAnda mengisi masing-masing
Weglot€1,678/ bulan9Kata × bahasa, pada halaman web
Mesin, di dalam kuota20 pada rencana terbesar yang diterbitkan

Daftar harga publik, dibaca pada Agustus 2026. Penjual mengubahnya, jadi silakan periksa. Setiap tagihan adalah pembacaan kami terhadap tangga yang diterbitkan, dan kami selalu memilih rencana berbayar termurah yang mempertahankan aplikasi Anda. Ketika penjual membill tarif terjemahan pertama sekali, kami menyebarkannya selama dua belas bulan.

1 Crowdin menerbitkan €44 per bulan untuk 60.000 kata yang dihosting pada paket Pro, ditagih tahunan. Satu kata yang dihosting adalah satu kata dalam satu bahasa target. Kami mengulangi harga blok tersebut di atas 60.000.

2 Intlayer bersifat open source. Biaya $29 per bulan mencakup CMS dan kuota pembuatan AI. Jika melebihi kuota, Anda dapat menggunakan kunci AI Anda sendiri, sehingga kami menambahkan tagihan model sebesar $10 untuk setiap juta token, tersebar selama dua belas bulan.

3 Lingo.dev menerbitkan $99 per bulan ditambah $2 untuk setiap juta token infrastruktur, dan meneruskan tagihan model kepada Anda. Kami menghitung 1,4 token untuk setiap kata dan $10 untuk setiap juta token biaya model. Biaya dasar adalah sebagian besar dari angka ini.

4 Locize menerbitkan €7, €19, dan €49 per bulan untuk 15.000, 30.000, dan 60.000 kata, dengan 1, 3, dan 5 juta unduhan CDN. Di atas itu, menerbitkan $0,50 untuk setiap 1.000 kata tambahan dan $5 untuk setiap juta unduhan tambahan. Kami menghitung tiga puluh unduhan untuk setiap pengguna setiap bulan. Tidak ada rencana yang diterbitkan mendukung 48 bahasa.

5 Lokalise menerbitkan $144, $375, dan $999 per bulan, tanpa batasan kunci. Kami berasumsi bahwa ketiga paket berisi 5.000, 20.000, dan 100.000 kunci, serta dua belas kata untuk setiap kunci. Terjemahan manusia ditagih secara terpisah.

6 Frasa menerbitkan $525 per bulan untuk 1 juta kata yang dikelola dalam rencana perangkat lunak, dan $1.245 untuk 3 juta. Kami menghitung satu kata yang dikelola untuk setiap kata dalam setiap bahasa, dan kami mengulangi blok $1.245 di atas untuk 3 juta.

7 Smartling tidak mempublikasikan harga platform. Kami hanya menghitung terjemahan AI, dengan tarif yang dipublikasikan $0,06 per kata, tersebar selama dua belas bulan. Tagihan Anda yang sebenarnya lebih tinggi.

8 Tolgee menagih kunci, bukan kata, jadi kami menghitung dua belas kata untuk setiap kunci. Ini menerbitkan €49 untuk 2.000 kunci, €179 untuk 5.000 dan €499 untuk 20.000, ditagih setiap tahun. Di atas itu, kami mengulangi blok €499. Kredit terjemahan mesin dihitung secara terpisah.

9 Weglot menerjemahkan halaman web, bukan aplikasi. Rencana terbesar yang diterbitkan adalah €699 per bulan untuk 20 bahasa, jadi kami skalakan harga tersebut ke 48 bahasa. Kata-katamu cocok di setiap rencana ini.

Setiap baris lainnya tumbuh dengan produk Anda. Harga kami adalah harga tetap.

Sebelum kamu bertanya

Pertanyaan yang sering diajukan

Apakah saya perlu mengelola berkas terjemahan?

Tidak. Tidak ada file JSON, tidak ada langkah ekstraksi kunci, dan tidak ada plugin build-time. Anda menulis kalimat Anda dalam bahasa sumber, SDK mengirimkannya ke API pada permintaan pertama, API menerjemahkannya dengan AI, dan setiap permintaan berikutnya dilayani dari cache. Kode Anda adalah satu-satunya sumber kebenaran.

Apa yang terjadi ketika saya mengubah teks sumber?

Teks sumber adalah kunci. Ubah dan Anda akan mendapatkan kunci baru dengan terjemahan AI yang segar. Kunci lama tidak lagi diminta, dan dasbor membersihkannya setelah 30 hari tidak digunakan. Memperbaiki kesalahan ketik juga sama: perbaiki di kode, deploy, dan teks baru akan diterjemahkan pada permintaan pertama.

Berapa harganya?

Hosting: satu harga tetap per proyek per bulan, berdasarkan pengguna aktif bulanan — €4 hingga 1.000, €9 hingga 5.000, €29 hingga 50.000, €99 hingga 500.000 — ditagih bulanan, dapat dibatalkan kapan saja. Self-hosting: gratis untuk diinstal, satu proyek gratis selamanya, €30 sekali untuk proyek tak terbatas, tanpa langganan dan tanpa batasan penggunaan. Tidak ada penetapan harga per kursi, per kata, atau per string dalam kedua pilihan.

Bisakah saya mengekspor terjemahan saya?

Ya. Dasbor memiliki tombol "Ekspor JSON" yang mengunduh setiap terjemahan di proyek Anda sebagai satu berkas JSON. Ekspor mencakup semua baris, bukan hanya yang digunakan dalam 30 hari terakhir, sehingga ini adalah cadangan lengkap. Tidak ada penguncian: data Anda selalu hanya satu klik saja.

Coba Sendiri

Tonton Demo

Tonton video singkat ini untuk melihat i18n-keyless dalam tindakan

Dapatkan Kunci API untuk Satu Aplikasi

Implementasi i18n lengkap Anda dalam 5 menit. iykyk.

Anda menetapkan kata sandi Anda setelah pembayaran, dari tautan yang kami kirimkan kepada Anda.