Ofte stilte spørsmål

Alt du trenger å vite om i18n-keyless før du begynner.

Må jeg administrere oversettelsesfiler?

Nei. Det finnes ingen JSON-filer, ingen nøkkeluttrekkingsprosess og ingen byggetid-plugin. Du skriver setningene dine på kilde språket ditt, SDK sender dem til API-et ved den første forespørselen, API-et oversetter dem med AI, og hver påfølgende forespørsel blir betjent fra hurtiglageret. Koden din er den eneste kilde til sannhet.

Hva skjer når jeg endrer kilde teksten?

Kildeteksten er nøkkelen. Endrer du den, får du en ny nøkkel med en frisk AI-oversettelse. Den gamle nøkkelen blir ikke lenger etterspurt, og dashbordet fjerner den etter 30 dager uten bruk. En stavefeilretting fungerer på samme måte: rett den i koden, deploy, og den nye teksten blir oversatt ved første forespørsel.

Hvor mye koster det?

Selvhostet: fullstendig gratis, ubegrensede prosjekter, ingen abonnement og ingen bruksbegrensning — installer Docker-avbildningen, bruk din egen AI-nøkkel. Liker du det? Gi meg et tips! Vert: en fast pris per prosjekt per måned, basert på månedlige aktive brukere — 4 € opp til 1 000, 9 € opp til 5 000, 29 € opp til 50 000, 99 € opp til 500 000 — faktureres månedlig, kan kanselleres når som helst. Det er ingen prising per sete, per ord eller per streng i noen av tilfellene.

Kan jeg eksportere oversettelsene mine?

Ja. Dashbordet har en knapp for "Eksporter JSON" som laster ned alle oversettelsene i prosjektet ditt som én JSON-fil. Eksporten inkluderer alle radene, ikke bare de som er brukt de siste 30 dagene, så det er en fullstendig sikkerhetskopi. Det er ingen binding: dataene dine er alltid bare ett klikk unna.

Hvilke rammeverk støtter det?

React, React Native, Vue, Svelte, Vanilla JS, Node.js, Ruby on Rails, Python, Go, Swift og Kotlin. Hver SDK fungerer på samme måte: pakk teksten din inn i et oversettelsesopprop, og API-et returnerer oversettelsen for gjeldende språk. Server-SDKene er trådsikre og cacher oversettelser i minnet.

Hvor mange språk støttes?

48 språk, inkludert regionale varianter som zh-Hans / zh-Hant, en / en-GB, fr / fr-CA, pt / pt-BR og es / es-MX. Arabisk, hebraisk og urdu er også på listen, så høyrevendte-til-venstrespråk fungerer også. Å legge til et nytt språk i prosjektet ditt er bare ett klikk i kontrollpanelet.

Fungerer det med server-side rendering?

Ja. Node.js SDK bruker AsyncLocalStorage slik at lastene, head-funksjonene og serverkomponentene dine kan oversette uten en React-leverandør. På klientsiden hydrerer React-leverandøren fra det serverrenderte HTML-et. Det finnes steg-for-steg-guider for Next.js, Nuxt og TanStack Start i dokumentasjonen.

Gjør det appen min tregere?

Når en ny streng blir bedt om for første gang, kaller API-et AI-modellen — omtrent et halvt sekund for en kort UI-streng, mer for et avsnitt. Alle senere forespørsler blir betjent fra databasen, som er et vanlig cache-hit. SDK-en cacher også oversettelser lokalt, slik at tilbakevendende brukere ikke opplever noen nettverksforsinkelse. Hvis ti brukere ber om den samme strengen samtidig, blir det bare gjort ett AI-oppslag.

Hva skjer hvis tjenesten går ned?

Hver SDK cacher oversettelser lokalt — i localStorage på nettet, AsyncStorage på mobil og i minnet på serveren. Hvis API-et ikke er tilgjengelig, leverer SDK de mellomlagrede oversettelsene. Brukerne dine ser den siste kjente oversettelsen, aldri en tom streng. Når API-et kommer tilbake, oppdaterer SDK-en stille.

Hvilken AI-leverandør bruker den?

Fem leverandører støttes: Mistral, OpenAI, Anthropic, Google, og ethvert OpenAI-kompatibelt endepunkt som Ollama, Groq eller Together. Operatøren velger leverandør og modell fra kontrollpanelet eller miljøet. Standardinnstillingen på i18n-keyless.com er Mistral. Selvhostede brukere kan kjøre Ollama lokalt og sende ingenting til en tredjepart.

Kan jeg overstyre en AI-oversettelse?

Ja. Klikk på hvilken som helst celle i kontrollpanelet, skriv inn riktig tekst, og lagre. Fikset er permanent: API overskriver aldri en verdi som er satt manuelt. Du kan også overstyre oversettelser via API eller via MCP-serveren, slik at en AI-kodingagent kan fikse en oversettelse for deg.

Kan jeg migrere fra i18next eller et annet bibliotek?

Ja. Det finnes en trinn-for-trinn-migreringsguide for i18next, react-intl og Lokalise i dokumentasjonen. API-et har en migreringsendepunkt som importerer eksisterende oversettelser én for én, uten AI-oppkall eller kostnader. MCP-serveren har det samme verktøyet, så en AI-agent kan utføre migreringen for deg.

Er det en gratis plan?

Den selvhostede versjonen er helt gratis med ubegrensede prosjekter — installer Docker-avbildningen, bruk din egen AI-nøkkel, og oppbevar dataene dine på din egen server. Ingen tidsbegrensning, ingen funksjonsbegrensninger. Den hostede planen starter på 4 euro per måned per prosjekt hvis du foretrekker ikke å kjøre en server.

Er kildekoden tilgjengelig?

Serveren, dashbordet og Docker-avbildningen er publisert på GitHub under Elastic License 2.0. Du kan lese hver linje, kjøre koden og endre den. SDK-ene — React, Vue, Node, Rails og andre — er lisensiert under MIT. Den eneste begrensningen: du kan ikke tilby programvaren som en vertstjeneste til tredjeparter.

En vedlikeholder: hva skjer hvis prosjektet stopper?

SDK-ene er under MIT-lisens og forblir tilgjengelige på npm, PyPI, RubyGems og andre registre. Serveren er offentlig under Elastic License 2.0, og protokollen mellom dem er dokumentert, slik at hvem som helst kan kjøre den, forke den eller skrive en server mot den. Oversettelsene dine forblir i én JSON-eksport når som helst. Hvis den hostede tjenesten stopper: installerte apper fortsetter å levere sine mellomlagrede oversettelser, en ny klient faller tilbake til kilde språket, og ved å peke SDK-en til din egen instans med API_URL gjenopprettes alt. Det du ville miste er AI-oversettelsen av nye strenger på i18n-keyless.com — ikke dataene dine eller appen din.

Les hele svaret, med kode
Er kontekst ikke bare en nøkkel i forkledning?

Nei. En nøkkel er påkrevd for hver streng, den må være unik, og den lever i et globalt navnerom du vedlikeholder manuelt. En kontekst er valgfri, knyttet til de få strengene der betydningen er uklar — "Close" kan bety å lukke vinduet eller "close" i betydningen avstand — og den beskriver betydningen, den navngir ikke strengen. De fleste strenger har ingen kontekst. Den opprinnelige teksten forblir oppslagsgrunnlaget, med eller uten kontekst; to identiske tekster med to kontekster er ganske enkelt to rader.

Les hele svaret, med kode
Kan jeg gjennomgå kopien i en pull request?

Ja. Den opprinnelige strengen er i koden, så enhver endring i ordlyden er en forskjell som gjennomgås i pull requesten på vanlig språk i stedet for et nøkkelord. Det som ikke er i git, er oversettelsene til de andre språkene: de ligger i databasen, slik det er med alle andre oversettelsesplattformer, og du gjennomgår dem i dashbordet, der en "gjennomgått" merking per celle skiller det en person har sjekket fra det AI har skrevet, eller i JSON-eksporten.

Les hele svaret, med kode
Hvorfor ikke Tolgee, som også er åpen kildekode?

Tolgee er en nøkkelbasert oversettelsesplattform under Apache 2.0-lisensen, med kontekstredigering, skjermbildekontekst og oversettelseshukommelse; hvis du ønsker disse funksjonene, eller oversettere i prosessen, er det et godt valg. i18n-keyless har ingen nøkler, ingen lokaliseringsfiler, AI-oversettelse er aktivert som standard med en manuell overskrivelse som AI aldri endrer, en server under Elastic License 2.0 med MIT SDK-er, og et selvhostet bilde som kjører på SQLite i én container. For en kontekstkorrigering, ta et skjermbilde og gi det til en AI-agent tilkoblet MCP-serveren: den finner strengen og overskriver oversettelsen. Sammenligningssiden i dokumentasjonen viser prisene side om side.

Les hele svaret, med kode
Selvhostet eller abonnement: hvilken?

Selvvert: det samme Docker-avbildningen på din egen server, helt gratis med ubegrensede prosjekter, med din egen AI-nøkkel og dataene dine hjemme. Liker du det? Gi meg et tips! Abonnement: vi kjører det, oppdateringer er automatiske, en fast pris fra 4 € per måned per prosjekt. Ta abonnementet hvis du foretrekker ikke å kjøre en server.

Les hele svaret, med kode
Hvordan håndterer jeg dynamiske verdier som navn eller telleverdier?

Bruk erstatningsalternativet. Skriv setningen med en plassholder — "Hei {name}, du har {count} elementer" — og send verdiene videre ved rendering med replace: { "{name}": userName, "{count}": String(n) }. AIen ser plassholderen og beholder den i hver oversettelse. SDKen erstatter verdien under kjøring.

Hvordan håndterer jeg flertall?

Skriv én form med {count} der tallet plasseres, og send tallet som count. API-et lagrer én ICU flertallsmelding per språk med akkurat de formene språket trenger — to på fransk, fire på russisk, seks på arabisk — sjekket mot Intl.PluralRules, og SDK velger den rette. Legg til ordinaltall for rangeringer (1st, 2nd). Du skriver aldri grenene selv.

Les hele svaret, med kode
Hvordan håndterer jeg kjønn?

Send verdien i select — select={{ gender: "kvinne" }} — og modellen skriver én variant per verdi, på hvert språk, med tanke på språkbehovene. Verdiene er identifikatorer fra en lukket mengde, maksimalt 10 per variabel og 2 variabler per setning; en select og en count kan kombineres. Åpne verdier som et navn forblir en erstatning.

Les hele svaret, med kode
Hvordan formaterer jeg datoer, tall og valutaer?

SDK formaterer dem ikke, det gjør kjøretiden din. Bruk Intl.DateTimeFormat og Intl.NumberFormat med gjeldende språk fra SDK, og legg deretter resultatet inn i setningen med replace. Én setning, én oversettelse, riktig format på hvert språk.

Les hele svaret, med kode
Kan jeg tilpasse oversettelsesprompten?

Nei, og du trenger ikke gjøre det. Prompten leser konteksten din for hver nøkkel: det er her tonen, målgruppen og betydningen fastsettes, og det er derfor det samme ordet oversettes forskjellig to steder. Og enhver oversettelse kan manuelt overskrives i kontrollpanelet; API-en overskriver aldri det du har skrevet.

Les hele svaret, med kode
Har den en MCP-server for AI-kodeagenter?

Ja. API-et er også en MCP-server med OAuth 2.1-autentisering. En AI-agent kan liste oversettelser, oversette strenger, overskrive verdier, importere eksisterende oversettelser og administrere prosjektdeltakere — de samme operasjonene som et menneske gjør i kontrollpanelet. Koble det til fra Claude Code, Cursor, Windsurf eller en hvilken som helst MCP-kompatibel klient.

Kan jeg bruke det til backend-strenger og e-poster?

Ja. Node.js-, Ruby on Rails-, Python- og Go-SDKene kjører på serveren. Oversett en e-postemnetekst, en feilmelding eller en push-varsling på samme måte som du oversetter en UI-streng. Server-SDKene cacher oversettelser i minnet og oppdaterer dem i bakgrunnen, så de legger ikke til forsinkelse på forespørselen din.

Kan hele teamet mitt jobbe med oversettelser?

Ja. Legg til teammedlemmer til et prosjekt fra instrumentbordet eller via API-et. Hvert medlem kan se alle oversettelser, overstyre hvilken som helst verdi og legge til språk. Administratorer oppretter prosjekter og administrerer medlemmer. Det er ingen per-seteprising: legg til så mange personer du trenger.

Hvordan fikser jeg en skrivefeil?

Kildeteksten er nøkkelen. Hvis du retter en skrivefeil i kildeteksten, får du en ny nøkkel med en ny oversettelse; den gamle strengen blir ganske enkelt ikke lenger bedt om, og dashbordet rydder den automatisk opp etter 30 dager uten bruk. En skrivefeil i en oversettelse: rediger cellen i dashbordet, og rettelsen er permanent.

Les hele svaret, med kode