Samodomaćeni

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.

Besplatno zauvijek
€0zauvijek

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
Instalirajte ga besplatno
Daj mi napojnicu
Sviđa li ti se ovo?

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.

Dodajte i18n od prvog dana bez ikakvog utjecaja na vaše razvojno tempo
Izgrađeno za programske agente

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 MCP
Savršeno za MVP-e

Pokreni 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

Postavite sustav ključeva (1 sat)
Stvori datoteke prijevoda (2 sata)
Refaktoriraj komponente (4 sata)
Testirajte sve jezike (2 sata)
Ispravi probleme rasporeda (3 sata)
12+ sati rada

i18n-bez-ključa

Dodaj paket (1 min)
Konfigurirajte pomoću API ključa (2 min)
Zamotaj tekstualne komponente (2 min)
5 minuta rada
Kako to radi

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

Brza postavka za svaki od dvanaest SDK-ova

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.

App Store & Google Play

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.

Ispitajte sami

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.

AA

Arnaud Ambroselli

Utemeljitelj i18n-keyless

Želite li dodati svoje?

Svjedočanstvo protiv besplatne pretplate. Zatražite svoju!

Pošalji moju izjavu
Prije nego što pitaš

Č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 kodom
Ispitajte sami

Pogledajte demo

Pogledajte ovaj kratki video kako biste vidjeli i18n-keyless u akciji