Preguntes freqüents

Tot el que necessites saber sobre i18n-keyless abans de començar.

Necessito gestionar els fitxers de traducció?

No. No hi ha fitxers JSON, cap pas d'extracció de claus ni cap connector en temps de compilació. Escriviu les vostres frases en la vostra llengua d'origen, l'SDK les envia a l'API en la primera sol·licitud, l'API les tradueix amb IA, i cada sol·licitud posterior es serveix des de la memòria cau. El vostre codi és l'única font de veritat.

Què passa quan canvio el text d'origen?

El text d'origen és la clau. Si el canvies, obtindràs una nova clau amb una nova traducció d'IA. L'antiga clau deixa simplement de rebre sol·licituds, i el tauler de control l'elimina després de 30 dies sense ús. Corregir una errada tipogràfica és igual: corregeix-la al codi, desplega-la, i el nou text es tradueix en la primera sol·licitud.

Quant costa?

Autoallotjat: completament gratuït, projectes il·limitats, sense subscripció i sense límit d'ús — instal·la la imatge de Docker, utilitza la teva pròpia clau d'IA. T'agrada? ¡Dona'm un cop de mà! Allotjat: un preu únic per projecte al mes, segons els usuaris actius mensualment — 4 € fins a 1.000, 9 € fins a 5.000, 29 € fins a 50.000, 99 € fins a 500.000 — facturat mensualment, cancel·la quan vulguis. No hi ha preu per seient, per paraula ni per cadena en cap dels dos casos.

Puc exportar les meves traduccions?

Sí. El tauler de control té un botó "Exporta JSON" que descarrega totes les traduccions del teu projecte com un únic fitxer JSON. L'exportació inclou totes les files, no només les utilitzades en els últims 30 dies, així que és una còpia de seguretat completa. No hi ha cap restricció: les teves dades sempre estan a un clic de distància.

Quins frameworks suporta?

React, React Native, Vue, Svelte, Vanilla JS, Node.js, Ruby on Rails, Python, Go, Swift i Kotlin. Tots els SDK funcionen de la mateixa manera: envolta el teu text en una crida de traducció, i l'API retorna la traducció per a l'idioma actual. Els SDK del servidor són segurs amb fils i emmagatzemen les traduccions a la memòria.

Quantes llengües estan suportades?

48 idiomes, incloent-hi variants regionals com zh-Hans / zh-Hant, en / en-GB, fr / fr-CA, pt / pt-BR i es / es-MX. L'àrab, l'hebreu i l'urdú estan a la llista, així que les llengües de dreta a esquerra també funcionen. Afegir un nou idioma al teu projecte és un clic al tauler de control.

Funciona amb renderitzat al costat del servidor?

Sí. El Node.js SDK utilitza AsyncLocalStorage perquè els teus loaders, funcions head i components de servidor puguin traduir sense necessitar un proveïdor de React. Al costat del client, el proveïdor de React hidrata a partir de l'HTML renderitzat al servidor. Hi ha guies pas a pas per Next.js, Nuxt i TanStack Start a la documentació.

Ho fa alentir la meva aplicació?

La primera vegada que es demana una nova cadena de text, l'API crida el model d'IA — uns mig segon per a una cadena curta d'interfície d'usuari, més per a un paràgraf. Cada sol·licitud posterior es serveix des de la base de dades, que és un encert de memòria cau habitual. L'SDK també emmagatzema les traduccions localment, de manera que els usuaris que tornen no veuen cap retard de xarxa. Si deu usuaris demanen la mateixa cadena al mateix temps, només es fa una trucada a la IA.

Què passa si el servei es baixa?

Cada SDK emmagatzema les traduccions localment — a localStorage a la web, a AsyncStorage al mòbil, i a la memòria al servidor. Si l'API no és accessible, el SDK serveix les traduccions emmagatzemades. Els teus usuaris veuen l'última traducció coneguda, mai una cadena buida. Quan l'API torna, el SDK s'actualitza silenciosament.

Quin proveïdor d'IA utilitza?

Es suporten cinc proveïdors: Mistral, OpenAI, Anthropic, Google i qualsevol punt final compatible amb OpenAI com ara Ollama, Groq o Together. L'operador tria el proveïdor i el model des del tauler de control o des de l'entorn. El valor per defecte a i18n-keyless.com és Mistral. Els usuaris autoallotjats poden executar Ollama localment i no enviar res a un tercer.

Puc sobreescriure una traducció d'IA?

Sí. Feu clic a qualsevol cel·la del tauler, escriviu el text correcte i deseu-lo. La correcció és permanent: l'API mai no sobreescriu un valor que s'hagi establert manualment. També podeu sobreescriure les traduccions mitjançant l'API o mitjançant el servidor MCP, de manera que un agent de codificació d'IA pugui corregir una traducció per a vosaltres.

Puc migrar de i18next o d'una altra biblioteca?

Sí. Hi ha una guia de migració pas a pas per a i18next, react-intl i Lokalise a la documentació. L'API té un punt final de migració que importa les teves traduccions existents una per una, sense cap crida a IA ni res facturat. El servidor MCP té la mateixa eina, així que un agent d'IA pot fer la migració per tu.

Hi ha un pla gratuït?

La versió autoallotjada és totalment gratuïta amb projectes il·limitats: instal·la la imatge de Docker, utilitza la teva pròpia clau d'IA i guarda les teves dades al teu propi servidor. Sense límit de temps, sense restriccions de funcionalitats. El pla allotjat comença a 4 € al mes per projecte si prefereixes no executar un servidor.

¿El codi font està disponible?

El servidor, el tauler de control i la imatge de Docker es publiquen a GitHub sota la llicència Elastic 2.0. Pots llegir cada línia, executar el codi i modificar-lo. Els SDK — React, Vue, Node, Rails i els altres — estan llicenciats amb MIT. L'única restricció: no pots oferir el programari com a servei allotjat a tercers.

Un mantenidor: què passa si el projecte s'atura?

Els SDK estan sota llicència MIT i romanen a npm, PyPI, RubyGems i altres registres. El servidor és públic sota la Llicència Elastic 2.0 i el protocol entre ells està documentat, de manera que qualsevol pot executar-lo, fer-ne un fork o escriure un servidor contra ell. Les teves traduccions es guarden en una exportació JSON en qualsevol moment. Si el servei allotjat s'atura: les aplicacions instal·lades continuen servint les seves traduccions emmagatzemades, un client nou retrocedeix a la llengua original, i apuntar l'SDK a la teva pròpia instància amb API_URL ho restaura tot. El que perdries és la traducció mitjançant IA de noves cadenes a i18n-keyless.com — no les teves dades ni la teva aplicació.

Llegeix la resposta completa, amb codi
El context no és simplement una clau disfressada?

No. Una clau és obligatòria en cada cadena, ha de ser única i resideix en un espai de noms global que mantens manualment. Un context és opcional, adjunt als pocs textos el significat dels quals és ambigu — "Close" la finestra o "close" per distància — i descriu el significat, no el nom de la cadena. La majoria de cadenes no en porten. El text original serveix com a referència, amb o sense context; dues cadenes idèntiques amb dos contextos diferents són simplement dues files.

Llegeix la resposta completa, amb codi
Puc revisar la còpia en una sol·licitud de pull?

Sí. La cadena d'origen està al codi, així que qualsevol canvi de redacció és una diferència que el revisor llegeix en la sol·licitud de pull, en llenguatge pla en lloc d'un nom de clau. El que no està al git és la traducció a les altres llengües: resideix a la base de dades, com passa amb qualsevol plataforma de traducció, i el revises al tauler de control, on una marca de "revisat" per cel·la separa allò que una persona ha comprovat del que ha escrit la IA, o en l'exportació JSON.

Llegeix la resposta completa, amb codi
Per què no Tolgee, que també és de codi obert?

Tolgee és una plataforma de traducció basada en claus sota la llicència Apache 2.0, amb edició en context, context de captura de pantalla i memòria de traducció; si vols aquestes funcionalitats, o traductors en el cicle, és una bona opció. i18n-keyless no té claus, ni fitxers de configuració de locale, traducció per IA per defecte amb una anul·lació manual que l'IA mai reescriu, un servidor sota la llicència Elastic 2.0 amb SDKs MIT, i una imatge auto-hostatjada que funciona amb SQLite en un contenidor. Per a una correcció en context, captura una imatge i dóna-la a un agent d'IA connectat al servidor MCP: troba la cadena i sobreescriu la traducció. La pàgina de comparació de la documentació mostra els preus costat a costat.

Llegeix la resposta completa, amb codi
Allotjat o subscripció: quin?

Autoallotjat: la mateixa imatge de Docker al teu propi servidor, completament gratuït amb projectes il·limitats, amb la teva pròpia clau d'IA i les teves dades a casa. T'agrada? Deixa'm una propina! Subscripció: nosaltres l'executem, les actualitzacions són automàtiques, un preu únic per projecte des de 4 € al mes. Fes la subscripció si prefereixes no executar un servidor.

Llegeix la resposta completa, amb codi
Com puc gestionar valors dinàmics com noms o comptatges?

Utilitza l'opció de reemplaçament. Escriu la frase amb un marcador — "Hola {name}, tens {count} elements" — i passa els valors en el moment de renderitzar amb replace: { "{name}": userName, "{count}": String(n) }. La IA veu el marcador i el manté en cada traducció. L'SDK substitueix el valor en temps d'execució.

Com puc gestionar els plurals?

Escriviu una forma amb {count} on va el número i passeu el número com a count. La API emmagatzema un missatge de plural ICU per idioma amb exactament les formes que necessita aquest idioma — dues en francès, quatre en rus, sis en àrab — verificades amb Intl.PluralRules, i el SDK tria la correcta. Afegiu l'ordinal per a rangs (1r, 2n). Mai no escriviu les branques vosaltres mateixos.

Llegeix la resposta completa, amb codi
Com gestiono els gèneres?

Passa el valor en select — select={{ gender: "femení" }} — i el model escriu una variant per valor, en cada idioma, amb l'acord de les necessitats lingüístiques. Els valors són identificadors d'un conjunt tancat, com a molt 10 per variable i 2 variables per frase; es pot combinar un select i un comptador. Els valors oberts com un nom es mantenen com a reemplaçament.

Llegeix la resposta completa, amb codi
Com formatejo les dates, els números i les monedes?

El SDK no els formata, el teu entorn d'execució sí. Fes servir Intl.DateTimeFormat i Intl.NumberFormat amb l'idioma actual del SDK, i després posa el resultat a la frase amb replace. Una frase, una traducció, el format correcte en cada idioma.

Llegeix la resposta completa, amb codi
Puc personalitzar l'indicació de traducció?

No, i no cal que ho facis. L'indicador llegeix el teu context per a cada clau: és on es defineixen el to, el públic i el significat, i és el que fa que la mateixa paraula es tradueixi de manera diferent en dos llocs. I qualsevol traducció es pot sobreescriure manualment al tauler de control; l'API mai no sobreescriu el que has escrit.

Llegeix la resposta completa, amb codi
Té un servidor MCP per a agents d'IA de codificació?

Sí. La API també és un servidor MCP amb autenticació OAuth 2.1. Un agent d'IA pot llistar traduccions, traduir cadenes, sobreescriure valors, importar traduccions existents i gestionar membres del projecte — les mateixes operacions que fa un humà al tauler de control. Connecta-ho des del Claude Code, Cursor, Windsurf o qualsevol client compatible amb MCP.

Puc utilitzar-ho per a cadenes del backend i correus electrònics?

Sí. Els SDK de Node.js, Ruby on Rails, Python i Go s'executen al servidor. Traduïu un subjecte d'email, un missatge d'error o una notificació push de la mateixa manera que traduïu una cadena d'interfície d'usuari. Els SDK del servidor emmagatzemen les traduccions a la memòria i les actualitzen en segon pla, de manera que no afegeixen latència a la vostra sol·licitud.

El meu equip sencer pot treballar en les traduccions?

Sí. Afegiu membres de l'equip a un projecte des del tauler de control o mitjançant l'API. Cada membre pot veure totes les traduccions, sobreescriure qualsevol valor i afegir idiomes. Els administradors creen projectes i gestionen membres. No hi ha preu per seient: afegiu tants membres com necessiteu.

Com puc arreglar una errada?

El text font és la clau. Si arregles una errada tipogràfica en el text font, obtens una nova clau amb una nova traducció; l'antic text simplement deixa de demanar-se i el tauler de control l'elimina automàticament després de 30 dies sense ús. Una errada tipogràfica en una traducció: edita la cel·la al tauler de control i l'error queda corregit de manera permanent.

Llegeix la resposta completa, amb codi