|
Documentación
Reservar una demoPlataforma
PlataformaMCPCLIAPIFlujos de trabajo
Guías
Registro de cambios

Localización

  • Resumen
  • API de traducción
  • Localización de aplicaciones web
  • Localización de apps móviles
  • iOS con catálogos de cadenas
  • Android con strings.xml
  • Localización de emails
  • Contenido estático (p. ej., .md, .json)
  • Next.js con Markdoc
  • Rails con i18n

Flujos de trabajo

  • Configuración del motor con MCP
  • Triaje de Jira
  • CI/CD

Localización de aplicaciones web

La CLI de Lingo.dev traduce los archivos de recursos de tu aplicación web —JSON, YAML, XLIFF, PO o PHP— con un motor de localización configurado. Configura i18n en tu framework, apunta la CLI a tus archivos de traducción y ejecútala.

Cómo funciona#

Todos los frameworks web cuentan con una biblioteca de i18n que carga las traducciones desde archivos de recursos: JSON en React, XLIFF en Angular, PO en Django, etc. La CLI traduce esos archivos directamente para que el framework incorpore las traducciones sin tocar el código.

1

Configura i18n en tu framework

Usa la biblioteca oficial de i18n de tu framework para añadir rutas según el idioma, una función de traducción y archivos de recursos en el idioma de origen. En cada sección de frameworks más abajo encontrarás un enlace a la guía oficial de configuración.

2

Configura la CLI

Ejecuta lingo init para crear un .lingo/config.json con tus idiomas de origen y destino, además de los patrones de archivo que quieres traducir; después, ejecuta lingo link para vincular tu organización y tu motor. La CLI detecta automáticamente el formato de cada archivo por su extensión, así que no hace falta indicar ningún tipo de bucket. Haz commit de .lingo/config.json.

3

Ejecuta las traducciones

Ejecuta lingo push y la CLI traducirá tus archivos de recursos con el motor de localización: las reglas del glosario, la voz de marca y la selección del modelo se aplican automáticamente.

Requisitos previos#

Instala la CLI e inicia sesión:

bash
npm install -g @lingo.dev/cli
lingo login

La CLI requiere Node.js 22+. En CI, omite el inicio de sesión interactivo y pasa una clave con --api-key o mediante la variable de entorno LINGO_API_KEY.

Cada ejecución de CLI envía el contenido a través de un motor de localización, la configuración que determina qué modelo de LLM, glosario, voz de marca y reglas se aplican. Crea uno en el panel de Lingo.dev y genera una API key. lingo link escribe el orgId y el engineId del motor en .lingo/config.json.

Configuración asistida por IA

El i18n MCP puede generar automáticamente toda la infraestructura de i18n de tu framework. Conéctalo a Claude Code, Cursor o GitHub Copilot y escribe "Set up i18n": el agente sigue una lista de 13 pasos para configurar las rutas, los archivos de traducción y un selector de idioma.

Frameworks de JavaScript#

El segmento de idioma de cada pattern se sustituye según el idioma de destino: public/locales/en/translation.json pasa a ser public/locales/de/translation.json, y así sucesivamente. La ruta de origen debe incluir el código del idioma de origen.

react-i18next carga traducciones desde archivos JSON y proporciona un hook useTranslation que asigna claves a cadenas traducidas en tiempo de ejecución.

json
{
  "orgId": "org_...",
  "engineId": "eng_...",
  "sourceLocale": "en",
  "targetLocales": ["es", "fr", "de", "ja"],
  "files": [{ "pattern": "public/locales/en/translation.json" }]
}

Frameworks del lado del servidor#

Laravel incluye localización integrada, que carga traducciones desde archivos PHP organizados por directorio de idioma.

json
{
  "orgId": "org_...",
  "engineId": "eng_...",
  "sourceLocale": "en",
  "targetLocales": ["es", "fr", "de", "ja"],
  "files": [{ "pattern": "lang/en/messages.php" }]
}

Ejecutar traducciones#

Con .lingo/config.json configurado, traduce todos los archivos de recursos con un solo comando:

bash
lingo push

La CLI lee tus archivos del idioma de origen, calcula qué ha cambiado desde la última ejecución usando el lockfile (.lingo/lock.json, versionado junto con tu configuración), traduce solo el delta y escribe los resultados en los archivos del idioma de destino. Las traducciones existentes se conservan: la CLI solo rellena las cadenas que faltan o se han actualizado.

En la primera ejecución, o después de añadir un nuevo idioma de destino, tradúcelo todo desde cero:

bash
lingo push --backfill-missing

Limita una ejecución a un subconjunto de archivos pasando un glob:

bash
lingo push "messages/**"

Para obtener las traducciones más recientes en otro entorno (por ejemplo, en otra máquina o en un paso de compilación) sin traducir, ejecuta lingo pull. Usa lingo check como control de despliegue para verificar que las traducciones están al día.

Siguientes pasos#

Proyectos de ejemplo
Repositorios funcionales de React, Next.js, Laravel y Rails con la configuración y las traducciones ya incorporadas
Configuración de la CLI
Referencia completa de .lingo/config.json: archivos, códigos de idioma y opciones avanzadas
Formatos compatibles
Todos los formatos de archivo que la CLI puede traducir
GitHub App
Automatiza las traducciones en cada push, del lado del servidor, sin runner ni secrets
i18n MCP
Configuración de i18n asistida por IA para tu framework

¿Te ha resultado útil esta página?

Max PrilutskiyMax Prilutskiy·Actualizado hace 8 días·5 min de lectura