Bezbolna internacionalizacija (i18n), proširena na vlastite horizonte bez trošenja tisuća dolara.
Potpuno besplatno. Neograničeni projekti, svih 48 jezika, bez isteka, nije potreban ključ licence.
Nepograničeni projekti. Svi 48 jezika. Bez isteka.
- Svi 48 jezika, neograničeni prijevodi
- Nadzorna ploča, MCP poslužitelj, svaki SDK
- Ništa za kupiti, ništa za unijeti osim vašeg AI ključa
i18n više nije težak, možete ga iskusiti. Ne smeta mi što dobijem napojnicu za to.
- Kad to osjetiš
- Ako ti se to svidi
- Od 1 do 1 milijun dolara, ne više
Sigurna plaćanja putem Stripe. Ključ licence stiže u vaš inbox — onemogućuje upit za donaciju u nadzornoj ploči.
Što dobiješ
- Neprekinuti projekti, svih 48 jezika, bez isteka
- Neograničeni prijevodi, bez ograničenja korištenja
- Nadzorna ploča, MCP poslužitelj za vaše agente, svaki SDK
- Jedan spremnik, jedna SQLite datoteka za sigurnosno kopiranje
- Licenca provjerena offline: vaš poslužitelj nikada ne poziva kući
- Svaka ažuriranja, za život: docker compose pull
Što donosiš
- Stroj s Dockerom: VPS od 4 € je dovoljno
- Ključ API-a za umjetnu inteligenciju (Mistral, OpenAI, Anthropic, Google ili bilo koji pružatelj usluga kompatibilan s OpenAI-jem). Prijevodi se izvode na vašem vlastitom računu, za nekoliko centi po aplikaciji
- Pet minuta
Podrška je putem e-pošte, uz najbolji mogući trud. Trebate nekoga na pozivu? Hostirani planovi su za vas.
Kako radi
Instalirajte, stvorite administratora, zalijepite svoj AI ključ. Svaki projekt je besplatan, zauvijek.
S ONCE — novi poslužitelj, domena, pet minuta
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
S Docker Composeom — bilo koja stroj na kojem radi 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
Zatim usmjerite svoj SDK na svoj poslužitelj:
I18nKeyless.init({
API_KEY: "your-project-key",
API_URL: "https://i18n.example.com",
// …
});Cjeloviti vodič: https://docs.i18n-keyless.com/docs/guides/self-hosting
Zašto donirati?
Zato što sami upravljate VPS-om i ključem API umjetne inteligencije. Nema razloga da vas naplaćujem za pretplatu. Mrzim pretplate i sam. Umjesto toga: vi odredite koliko vam je ovaj softver vrijedan, a ja ću nastaviti razvijati ga.
Slika se instalira besplatno i pokreće neograničene projekte, sa svim jezicima i bez isteka.
Pitanja prije kupnje? Napišite nam
Postavite i18n, održavajte svoju bazu koda čistom i brzo dostavljajte
Postoji više PITA s trenutnim rješenjima i18n. Bolovi su toliko veliki da odgađate i18n koliko god je moguće.
Ona troši vrijeme koje bi trebali provesti na plaži
Postavi sustav ključeva: barem 1 sat vremena seniora programera
Naprijed i natrag za svaki novi ključ: 1 minuta po ključu, x500 ključeva, x2 jezika = 17 sati
S i18n-keyless-om se ne morate brinuti o sustavu internacionalizacije. Možete otići na plažu i naručiti mojito.
Danas većina sustava koristi ključeve za prevođenje teksta
Bolno je generirati ovo. Bolno je održavati ovo.
Kada vidite tekst u aplikaciji i želite ga ažurirati, trebate pronaći odgovarajući ključ.
S i18n-keyless-om ne morate brinuti o sustavu i18n uopće. Upotrijebite svoj mozak za nešto zanimljivije.
Prepusti prijevod AI-ju
S ključnim sustavom morate upravljati prijevodima u aplikaciji.
U suprotnom će vaši korisnici vidjeti someheader.welcome.title u svojoj aplikaciji.
S i18n-keylessom, u najgorem slučaju offline vidjet ćete neprevedene stvarne riječi. U normalnom ritmu uopće ne brinete o sustavu i18n. Samo napišite dobre naslove, usredotočite se na marketing i povećajte prodaju.
Kodne baze su lijepe... sve dok se i18n ključevi ne zaraze
S ključnim sustavom, kada pročitate kod i sadržaj, morate čitati ključeve, a ne prirodni jezik.
Ponekad biste trebali napraviti ispravak jer rečenica nije gramatički točna. Ali to ne znate jer čitate ključeve.
S i18n-keylessom se ne morate brinuti o sustavu i18n. Baza koda ostaje lijepa.
MCP poslužitelj za pokrivanje svih vaših potreba za internacionalizacijom
Još šest razloga zašto je sustav tako optimiziran za agencijsko kodiranje.
Nema imena za izmisliti
Ključ je odluka o imenovanju bez točnog odgovora. Dva agenta pišu login.submit i auth.button.send za isti gumb. Bez ključeva nema odluke za donijeti.
Jedna datoteka za uređivanje, ne dvadeset
Promjena s ključem utječe na komponentu i sve JSON datoteke lokalizacije, a agensi zaboravljaju datoteke. Ovdje je promjena kopije uređivanje jedne datoteke.
Nula konflikata spajanja u flotama agenata
Pet agenata na pet grana uređuje en.json: zajamčena konflikt. Nema zajedničkih datoteka, pa se worktrees i pozadinski agenti nikad ne sudaraju.
Jeftin u tokenima
Da bi se ključ ponovno koristio, agent mora učitati datoteke lokalizacije u kontekst pri svakom uređivanju. Učitavanje bez ključa ne radi ništa: tekst je već tamo u komponenti.
Čitljive razlike
Povlačenje zahtjeva prikazuje stvarne rečenice. Čovjek ili agent za recenziju može procijeniti kopiju bez kopanja za što ključ predstavlja.
Jedno pravilo u vašem CLAUDE.md
Svako pravilo i18n koje napišete je pravilo koje agent može prekršiti. Ovo pravilo treba samo jednu liniju — a rezervna opcija je pravi tekst, pa greška neće prikazati a.b.c na ekranu.
Jedino pravilo i18n koje treba vaš agent
# CLAUDE.md Write the UI copy in English and wrap it in <T>…</T> from i18n-keyless-react. That is the whole i18n setup.
Vaš agent može ga upravljati, ne samo pisati
Kroz MCP poslužitelj, agent navodi nedostajuće prijevode, pročita jedan, zamijeni loš, ili uveze kopiju koju već imaš — s vlastitim OAuth prijavom, bez potrebe za lijepljenje ključa.
Pročitajte vodič za MCPPokreni globalno od prvog dana
Prestani odgađati internacionalizaciju zbog složenosti. Implementirajte za 5 minuta, a ne za dane. Održavajte brzinu razvoja kao da internacionalizacija nije implementirana.
- Implementacija za 5 minuta. Ne šalim se.
Jedna jednostavna konfiguracijska datoteka i gotovi ste.
- Održavajte brzinu razvoja
Kodiraj kao da i18n uopće nije implementiran.
- Isporuči globalnim tržištima
Nema potrebe za refaktoriranjem pri skaliranju na nove jezike.
- SSR i SEO spremni
Radi s Next.js, Remix, TanStack Start i Astro. Server-renderirajte bilo koji jezik za tražilice — isti 5-minutni postavljanje.
Tradicionalni i18n
i18n-bez-ključa
Nema razmišljanja oko postavljanja
Samo najjednostavniji objekt konfiguracije i spremni ste za globalno poslovanje.
I još više, vaš će agent to podesiti za vas.
1. Osnovna postava
import * as I18nKeyless from "i18n-keyless-react";
I18nKeyless.init({
API_KEY: "YOUR_API_KEY",
storage: window.localStorage,
languages: {
primary: "en",
supported: ["en", "fr"],
},
});2. Korištenje komponente (Ovdje React; isto vrijedi za Vue, Angular, Flutter, Swift i 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. Korištenje na strani poslužitelja (ovdje Node.js; isti poziv u Laravelu, Railsu, Pythonu i Go-u)
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. Za tekst izvan komponenti
import { getTranslation } from "i18n-keyless-react";
export default function Navigation() {
return (
<HomeTabs.Navigator>
<HomeTabs.Screen
options={{ tabBarLabel: getTranslation("Welcome") }}
name="WELCOME"
/>
</HomeTabs.Navigator>
);
}5. Odaberite svoj SDK: jedan redak instalacije, isti API posvuda
- 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
Kako rade prijevodi
i18n-keyless je knjižnica, u kombinaciji s API uslugom, koja vam omogućuje prevođenje teksta bez potrebe za korištenjem ključeva.
Ako se prijevod ne pronađe, bit će izveden asinkroni dohvat API-ja I18nKeyless kako bi se dobio prijevod putem AI API poziva.
Ova se operacija obično izvodi u razvojnom načinu rada, dok kodirate. Ako ste propustili jednu, u produkciji će samo prvi korisnik koji nedostaje prijevod vidjeti kvar, a zatim će biti odmah dostupan korisnicima diljem svijeta.
Vaš popis trgovine na svakom jeziku, pri svakom izdanju
Svaka ažuriranja znači nove bilješke o izdavanju, opis i ključne riječi — za svaki jezik, na obje trgovine. To je ono što vas sprječava da dodate jezike. Ne aplikacija.
- Bilješke o izdanjima za sve jezike, u jednom pozivu
Napišite ažuriranje jednom. awaitForTranslation vraća ga na svakom jeziku na kojem prodajete, a konfiguracija vaše trgovine ga prosljeđuje EAS-u ili fastlaneu.
- 48 jezika, preslikano na App Store slotove
pt-BR i pt-PT su dvije liste; en-GB, en-AU i en-CA su tri. toAppStoreLocale stavlja svaki prijevod na pravo mjesto.
- Ispravi loš prijevod bez izdanja
U aplikaciji, jedna izmjena na nadzornoj ploči aktivna je istodobno — bez builda hitnog ispravka, bez pregleda trgovine. U popisu, ponovno pokreni push.
- Nije cijena po riječi
Prijevoditelj naplaćuje oko 0,10 € po riječi. 2.000 nizova puta 10 jezika je proračun koji samostalni programer ne može priuštiti. Ovdje se riječi ne broje.
Cijeli recept za Expo aplikaciju
// 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 } };
};Isti poziv zapisuje datoteke metapodataka fastlane za Google Play. Velika slova su savjetodavna: postavite ograničenje u kontekst i provjerite duljinu prije nego što pošaljete.
Interaktivni pješčanik
Pogledajte kako i18n-keyless radi u stvarnom vremenu
Otvorite živu, uređivu StackBlitz projektnu datoteku kako biste vidjeli kako se prijevodi rješavaju dok tipkate.
Zašto sam izgradio ovo
Uvijek sam odgađao internacionalizaciju dok mi klijent to nije toliko želio da nisam imao izbora. Mrzim čitati kod s ključevima za internacionalizaciju unutra, i mrzim održavati JSON datoteke koliko i gledati koliko su skupi pružatelji usluga internacionalizacije. Zato sam morao izgraditi vlastiti, i BOŽANSTVENO GA VOLIM. Svi moji aplikacije sada su internacionalizirani po defaultu.
Arnaud Ambroselli
Utemeljitelj i18n-keyless
Želite li dodati svoje?
Svjedočanstvo protiv besplatne pretplate. Zatražite svoju!
Pošalji moju izjavuČesto postavljana pitanja
Treba li mi upravljati datoteke prijevoda?
Ne. Nema JSON datoteka, nema koraka za izdvajanje ključeva, niti dodatka za vrijeme izgradnje. Pišete svoje rečenice na izvornom jeziku, SDK ih šalje API-ju na prvom zahtjevu, API ih prevodi pomoću AI-ja, a svaki sljedeći zahtjev se opslužuje iz predmemorije. Vaš kod je jedini izvor istine.
Što se događa kada promijenim izvorni tekst?
Izvorni tekst je ključ. Promijenite ga i dobit ćete novi ključ s novim AI prijevodom. Stari ključ jednostavno prestaje biti zatražen, a nadzorna ploča ga nakon 30 dana neaktivnosti očisti. Ispravljanje tipfelerke radi se na isti način: ispravite je u kodu, objavite i novi tekst će biti preveden na prvom zahtjevu.
Koliko to košta?
Samostalno hostirano: potpuno besplatno, neograničeni projekti, bez pretplate i bez ograničenja korištenja — instalirajte Docker sliku, koristite vlastiti AI ključ. Sviđa vam se? Podržite me! Hostirano: fiksna cijena po projektu mjesečno, prema aktivnim korisnicima mjesečno — 4 € do 1.000, 9 € do 5.000, 29 € do 50.000, 99 € do 500.000 — naplaćuje se mjesečno, možete otkazati u bilo kojem trenutku. Nema cijene po sjedištu, po riječi ili po stringu u oba slučaja.
Mogu li izvesti svoje prijevode?
Da. Nadzorna ploča ima gumb "Izvezi JSON" koji preuzima sve prijevode u vašem projektu kao jednu JSON datoteku. Izvoz uključuje sve retke, ne samo one koji su korišteni u posljednjih 30 dana, pa je to potpuna sigurnosna kopija. Nema zaključavanja: vaši podaci uvijek su samo jedan klik udaljeni.
Jedan održavatelj: što se dogodi ako se projekt zaustavi?
SDK-ovi su pod MIT licencom i ostaju dostupni na npm-u, PyPI-ju, RubyGemsima i drugim registrima. Server je javno dostupan pod Elastic Licencom 2.0, a protokol između njih je dokumentiran, tako da ga može pokrenuti, forkati ili napisati server protiv njega bilo tko. Vaši prijevodi ostaju u jednom JSON exportu u bilo kojem trenutku. Ako hostana usluga prestane raditi: instalirane aplikacije nastavljaju servirati svoje keširane prijevode, novi klijent se vraća na izvorni jezik, a usmjeravanjem SDK-a na vlastitu instancu s API_URL-om sve se vraća u normalu. Ono što biste izgubili jest AI prijevod novih stringova na i18n-keyless.com — ne vaše podatke niti aplikaciju.
Pročitajte potpuni odgovor s kodomPogledajte demo
Pogledajte ovaj kratki video kako biste vidjeli i18n-keyless u akciji