Önhostozott

Fájdalommentes i18n, kibővítve a saját horizontjaidra ezer dollár kiadása nélkül.

Teljes mértékben ingyenes. Végtelen projektek, mind a 48 nyelv, nincs lejárat, nem szükséges licenc kulcs.

Ingyenesen örökké
€0örökre

Végtelen projektek. Az összes 48 nyelv. Nincs lejárat.

  • Minden 48 nyelv, korlátlan fordítások
  • A vezérlőpult, az MCP-kiszolgáló, minden SDK
  • Semmit sem vásárolni, sem bevinni, csak az AI-kulcsod
Telepítse ingyen
Adj nekem borravalót
Tetszik neked?

Az i18n most már egyszerű, kipróbálhatod. Nem bánom, ha érte borravalót kapok.

  • Amikor érzed
  • Ha kedved van hozzá
  • 1-től 1 millió dollárig, nem több

Biztonságos fizetés a Stripe-en keresztül. Egy licencekulcs landol a postaládádban — ez elnémítja a donációs promptot a vezérlőpulton.

Amit kapsz

  • Korlátlan projektek, az összes 48 nyelv, nincs lejárat
  • Végtelen fordítások, korlátlan használat
  • A műszerfal, az MCP-kiszolgáló az ügynökeid számára, minden SDK
  • Egy konténer, egy SQLite-fájl a mentéshez
  • Egy offline ellenőrzött licence: a szervered soha nem hívja a központot
  • Minden frissítés, az életre: docker compose pull

Amit hozol

  • Egy gép Dockerrel: egy 4 €-s VPS bőven elég
  • Egy AI API-kulcs (Mistral, OpenAI, Anthropic, Google vagy bármely OpenAI-kompatibilis szolgáltató). A fordítások a saját fiókodon futnak, néhány centbe kerülnek alkalmazあたり
  • Öt perc

A támogatás e-mailen keresztül történik, a legjobb erőfeszítéssel. Szüksége van valakire, aki felveszi a telefont? A hosted tervek a magáéi.

Hogyan működik

Telepítse, hozza létre az adminisztrátort, illessze be az AI-kulcsát. Minden projekt ingyenes, örökre.

ONCE – egy friss szerver, egy domain, öt perc

curl -fsSL https://get.once.com | sh
once   # add an app: ghcr.io/ambroselli-io/i18n-keyless:latest, pick a host name
# then open it: create the admin, paste your AI key on Settings
# fully free, unlimited projects — donate if you want
# ONCE does the domain, the TLS, the updates and the backups

A Docker Compose-zal — bármely olyan gép, amelyen fut a Docker

mkdir i18n-keyless && cd i18n-keyless
curl -fsSL https://i18n-keyless.com/self-hosted/docker-compose.yml -o docker-compose.yml
docker compose up -d
# → http://localhost:1800: create the admin, paste your AI key on Settings
# fully free, unlimited projects — donate if you want

Ezután irányítsa az SDK-ját a szerverére:

I18nKeyless.init({
  API_KEY: "your-project-key",
  API_URL: "https://i18n.example.com",
  // …
});

A teljes útmutató: https://docs.i18n-keyless.com/docs/guides/self-hosting

Miért adományozzon?

Mert te magad kezeled a VPS-t és az AI API-kulcsot. Nincs okom, hogy előfizetési díjat számítsak fel neked. Én magam is utálom az előfizetéseket. Ehelyett: te döntöd el, hogy mennyit ér neked a szoftver, én pedig továbbra is fejlesztem.

A kép ingyenesen települ és korlátlan projekteket futtat, minden nyelven és lejárt nélkül.

Kérdések a vásárlás előtt? Írjon nekünk

I18n beállítás, tartsa tiszta a kódját és szállítson gyorsan

Több PITA létezik a jelenlegi i18n megoldásokkal. A fájdalmak olyan nagyok, hogy lehetőleg elhalasztod az i18n-t.

Időt fogyaszt, amelyet a strandon kellene töltened

A kulcsrendszer beállításához legalább 1 óra senior fejlesztői idő szükséges

Oda-vissza minden új kulcsra: 1 perc kulcsanként, x500 kulcs, x2 nyelv = 17 óra

Az i18n-keyless-sel nem kell gondolkodnod az i18n rendszerre. Elmehet a strandra és rendelhet egy mojitót.

Ma a legtöbb rendszer kulcsokat használ a szöveg fordításához

Ez fájdalmas generálni. Ez fájdalmas karbantartani.

Ha lát egy szöveget az alkalmazásban, és frissíteni szeretné, akkor a megfelelő kulcsot kell megtalálnia.

Az i18n-keyless-szel nem kell gondolni az i18n rendszerre. Használja agyát valami érdekesre.

Hagyja a fordításokat az AI-ra

A kulcsszerviz segítségével a fordításokat az alkalmazásban kell kezelni.

Különben a felhasználók a someheader.welcome.title szöveget látják az alkalmazásukban.

Az i18n-keylessszel a legrosszabb offline forgatókönyvben láthatod a lefordítatlan valós szavakat. Normál tempóban egyáltalán nem érdekel az i18n rendszer. Csak írj jó címeket, koncentrálj a marketingre, és növeld az értékesítést.

A kódbázisok gyönyörűek... amíg az i18n kulcsok fertőzik

A kulcsszervizzel, amikor olvassad a kódot és a tartalmat, olvasnod kell a kulcsokat, nem a természetes nyelvet.

Néha azt kell tennie, hogy javítson, mert egy mondat nem grammatikailag helyes. De nem tudja azt, mert olvassa a kulcsokat.

Az i18n-keyless-sel nem kell gondolkodnod az i18n rendszerre. A kódbázis szépen marad.

Hozzáadja az i18n-t az első napon anélkül, hogy bármilyen hatással lenne a fejlesztési tempójára
Kódoló ügynökök számára készült

MCP-kiszolgáló az Ön összes i18n igényének kielégítéséhez

Hat további ok, amiért a rendszer annyira optimalizált az ügynöki kódolásra.

Nincs név kitalálni

A kulcs egy elnevezési döntés, amelyre nincs helyes válasz. Két ügynök írja a login.submit és az auth.button.send-t ugyanarra a gombra. Kulcsok nélkül nincs döntés meghozatalára.

Egy fájl szerkesztéséhez, nem húsz

Egy kulcsalapú változás érinti a komponenst és minden helyi JSON-fájlt, az ügynökök pedig elfelejtik a fájlokat. Itt egy másolatváltoztatás egy fájl szerkesztése.

Nincs merge-konfliktus az ügynöki flottákban

Öt ágens öt ágon szerkeszti az en.json-t: garantált konfliktus. Nincs megosztott fájl, így a worktrees-ek és a háttérben futó ágensek soha nem ütköznek.

Olcsó tokenekben

Egy kulcs újbóli felhasználásához az ügynöknek minden szerkesztéskor be kell töltenie a helyi fájlokat a kontextusba. A kulcs nélküli betöltés semmit sem tesz: a szöveg ott van a komponensben.

Olvasható különbségek

A pull request valódi mondatokat mutat. Egy ember vagy egy felülvizsgálati ügynök anélkül is megítélheti a másolatot, hogy ki kellene derítenie, mit jelent egy kulcs.

Egy szabály a CLAUDE.md fájlodból

Minden i18n szabály, amit írsz, egy olyan szabály, amit az ügynök megszeghet. Ennek a szabálynak elegendő egyetlen sor — és a visszaeső az eredeti szöveg, így egy hiba nem fogja megjeleníteni az a.b.c-t a képernyőn.

Az egyetlen i18n szabály, amit az ügynöködnek szükséges

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

Az ügynöke képes működtetni, nem csak írni

Az MCP-kiszolgálón keresztül az ügynök felsorolja a hiányzó fordításokat, olvas egyet, felülír egy rosszat, vagy importálja a már meglévő másolatodat — saját OAuth-bejelentkezéssel, anélkül, hogy bármilyen kulcsot be kellene illesztened.

Olvassa el az MCP útmutatót
Tökéletes MVP-k számára

Globálisan indítsa el az első napon

Ne halogassa tovább a i18n komplexitása miatt. Valósítsa meg 5 perc alatt, nem napokban. Tartsa fenn a fejlesztési sebességét úgy, mintha a i18n nem lett volna megvalósítva.

  • 5 perces implementáció. Nem viccel.

    Egy egyszerű konfigurációs objektum, és kész.

  • Fejlesztési sebesség fenntartása

    Írts kódot úgy, mintha az i18n nem lenne megvalósítva.

  • Szállítson globális piacokra

    Nincs szükség refaktorálásra, amikor új nyelvekre skalálod.

  • SSR & SEO kész

    Működik Next.js-sel, Remix-sel, TanStack Start-tal és Astro-val. Szerveroldali renderelés bármely nyelven a keresőmotorok számára — ugyanaz az 5 perces beállítás.

Hagyományos i18n

Beállítás kulcskészlet (1 óra)
Létrehozás fordítási fájlok (2 óra)
Komponensek refaktorálása (4 óra)
Tesztelje ki az összes nyelvet (2 óra)
Megoldás a elrendezési problémák (3 óra)
12+ órás munka

i18n-kulcsköd

Csomag hozzáadása (1 perc)
Beállítás API kulcsal (2 perc)
Szövegrészek beburkolása (2 perc)
5 perc munkája
Hogyan működik

Egyszerűen beállítani

Csak a legkisebb konfigurációs objektum és kész vagy a globális használatra.
Sőt még többet, az ügynöke beállítja neked.

1. Alapbeállítás

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

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

2. Komponenshasználat (Itt React; ugyanaz Vue, Angular, Flutter, Swift és Kotlin esetén)

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. Szerveroldali használat (itt Node.js; ugyanaz a hívás Laravelben, Railsben, Pythonban és Go-ban)

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. A komponensek kívüli szöveghez

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

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

5. Válassza ki az SDK-ját: egy telepítési sor, ugyanaz az API mindenütt

  • 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

Gyors beállítás minden tizenkét SDK számára

Hogyan működnek a fordítások

Az i18n-keyless egy könyvtár, amely egy API szolgáltatás kombinációjával, lehetővé teszi, hogy fordítsa a szöveget anélkül, hogy kulcsokat kellene használnia.

Ha a fordítás nem található, akkor egy aszinkron lekérés történik az I18nKeyless API-jához, hogy egy AI API hívással megkapja a fordítást.

Ez az művelet általában fejlesztési módban történik, miközben kódol. Ha kihagyott egyet, a termelésben csak az első felhasználó, aki hiányzik a fordítás, lát egy hibát, majd azonnal elérhető lesz a felhasználók számára a világ minden táján.

App Store & Google Play

Az üzleted listája minden nyelven, minden kiadáskor

Minden frissítés új kiadási megjegyzéseket, leírást és kulcsszavakat jelent — minden nyelvhez mindkét boltban. Ez az, ami megakadályoz abban, hogy nyelveket adj hozzá. Nem az alkalmazás.

  • Kiadási jegyzetek minden nyelvhez, egy hívásban

    Írja le a frissítést egyszer. Az awaitForTranslation visszaadja minden nyelven, amelyen értékesít, a bolt konfigurációja pedig továbbítja azt az EAS vagy a fastlane számára.

  • 48 nyelv, leképzve az App Store részeit

    pt-BR és pt-PT két lista; en-GB, en-AU és en-CA három. toAppStoreLocale minden fordítást a megfelelő helyre tesz.

  • Javítsd ki a rossz fordítást kiadás nélkül

    Az alkalmazásban egy felülbírálás a vezérlőpulton egyszerre aktív — nincs hotfix build, nincs boltértékelés. A listában futtasd újra a push műveletet.

  • Nem szó szerinti ár

    Egy fordító körülbelül 0,10 €-t számol fel szóra. 2 000 karakterlánc 10 nyelven egy olyan költségvetés, amit egy magánfejlesztő nem engedhet meg magának. Itt a szavak nem számítanak.

A teljes recept egy Expo alkalmazáshoz

// 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 } };
};

Ugyanaz a hívás írja a fastlane metaadat-fájlokat a Google Play számára. A nagybetűk tanácsadó jellegűek: helyezze a korlátot a kontextusba, és ellenőrizze a hosszúságot a push előtt.

Próbáld ki önmagad

Interaktív szandbox

Nézd meg, hogyan működik az i18n-keyless valós időben

Nyisson meg egy élő és szerkeszthető StackBlitz-projektet, hogy láthassa, ahogy a fordítások megoldódnak a gépelés közben.

Miért építettem ezt

Mindig halogattam a nemzetközi nyelvi támogatást, amíg a kliensem annyira nem akarta, hogy nem volt más választásom. Utálom olvasni a kódot az i18n kulcsokkal, és ugyanúgy utálom karbantartani a JSON fájlokat, mint látni, milyen drágák az i18n fordítási szolgáltatók. Így hát meg kellett építenem a sajátomat, és IGAZÁN SZERETEM. Most már minden alkalmazásom alapértelmezés szerint nemzetközi nyelvi támogatással rendelkezik.

AA

Arnaud Ambroselli

Az i18n-keyless alapítója

Szeretnéd hozzáadni a sajátodat?

Egy tanúság egy ingyenes előfizetés ellen. Kérje a sajátját!

Küldd el a tanúvallomásomat
Mielőtt megkérdeznéd

Gyakran ismételt kérdések

Szükséges a fordítási fájlok kezelése?

Nem. Nincsenek JSON fájlok, nincs kulcsextrakciós lépés, és nincs build-time bővítmény. A mondatait a forrásnyelvén írja meg, az SDK az első kéréskor elküldi őket az API-nak, az API pedig AI-vel fordítja le, és minden további kérés a gyorsítótárból kerül kiszolgálásra. A kódja az egyetlen igazságforrás.

Mi történik, amikor megváltoztatom a forrás szöveget?

A forrásszöveg a kulcs. Ha megváltoztatod, egy új kulcsot kapsz egy friss AI-fordítással. A régi kulcs egyszerűen nem lesz többé igényelve, a vezérlőpult pedig 30 nap használat nélkül automatikusan törli. A helyesírási hiba javítása is ugyanígy működik: javítsd ki a kódban, telepítsd, és az új szöveg az első kérésre lefordítódik.

Mennyibe kerül?

Önhostolt: teljesen ingyenes, korlátlan projektek, nincs előfizetés és nincs használati korlát — telepítse a Docker képet, használja a saját AI kulcsát. Tetszik? Adj egy tippet! Hostolt: egy fix ár projektenként havonta, havi aktív felhasználók alapján — 4 €-ig 1 000-ig, 9 €-ig 5 000-ig, 29 €-ig 50 000-ig, 99 €-ig 500 000-ig — havi számlázás, bármikor lemondható. Nincs árazás székenként, szó szerint vagy karakterlánconként egyik esetben sem.

Kivehetném-e a fordításaimat?

Igen. A vezérlőpultnak van egy „JSON exportálás” gombja, amely letölti a projektje összes fordítását egy JSON fájlként. A kivitel minden sort tartalmaz, nem csak azokat, amelyeket az elmúlt 30 napban használtak, így ez egy teljes biztonsági mentés. Nincs lekötés: az adatai mindig csak egy kattintásnyira vannak.

Egy karbantartó: mi történik, ha a projekt leáll?

A SDK-k MIT licenc alatt állnak, és elérhetők maradnak az npm, PyPI, RubyGems és más regisztereken. A szerver nyilvános az Elastic License 2.0 alatt, és a köztük lévő protokoll dokumentált, így bárki futtathatja, fork-olhatja, vagy írhat ellene egy szervert. A fordításait egy JSON exportban tárolja bármikor. Ha a hosted szolgáltatás leáll: a telepített alkalmazások továbbra is szolgáltatják a gyorstárazott fordításaikat, egy új kliens visszaugrik a forrásnyelvre, és az SDK-t a saját példányodra az API_URL-lel irányítva minden visszaáll. Amit elveszítenél, az az új karakterláncok AI-fordítása az i18n-keyless.com-on — nem az adataidat vagy az alkalmazásodat.

Olvassa el a teljes választ a kóddal együtt
Próbáld ki önmagad

Nézd meg a demót

Nézd meg ezt a rövid videót, hogy lássd, hogyan működik az i18n-keyless