# gt: General Translation CLI tool: Configurar la CLI URL: https://generaltranslation.com/es/docs/cli/guides/configuring.mdx --- title: Configurar la CLI description: "Cómo configurar el archivo gt.config.json de General Translation: esta guía explica cómo configurar tus locales, archivos y opciones de almacenamiento." related: links: - /docs/cli/guides/generating-translations - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx - /docs/cli/guides/branching --- La CLI lee un archivo `gt.config.json` en la raíz de tu proyecto para decidir qué traducir y dónde se guardan los resultados. Esta guía te muestra cómo crear y editar ese archivo. *Nota: Esta guía cubre las opciones de configuración más habituales. Para ver todos los campos disponibles, consulta la [referencia de configuración](/docs/cli/reference/config).* ## Crea el archivo de configuración [#create] Puedes crear `gt.config.json` de tres formas. Elige la que mejor se adapte a tu flujo de trabajo. ### a) Ejecuta el asistente de configuración completo Ejecuta [`gt init`](/docs/cli/reference/commands/init) para detectar tu framework, instalar las dependencias, crear el archivo de configuración y generar las credenciales en un solo paso. ```bash npx gt init ``` ### b) Crea solo el archivo de configuración Ejecuta [`gt configure`](/docs/cli/reference/commands/configure) para crear `gt.config.json` sin instalar dependencias ni modificar la configuración de tu framework. ```bash npx gt configure ``` ### c) Escríbelo manualmente Crea el archivo tú mismo y añade la referencia `$schema` para la validación del editor y el autocompletado. ```json title="gt.config.json" { "$schema": "https://assets.gtx.dev/config-schema.json", "defaultLocale": "en", "locales": ["fr", "es"] } ``` ## Configura tus locales [#locales] Configura `defaultLocale` con el idioma en el que está escrito tu contenido de origen e indica tus idiomas de destino en `locales`. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["fr", "es", "ja"] } ``` Ambos usan códigos de configuración regional estándar, como `en`, `en-US` o `zh`. Consulta [locales compatibles](/docs/platform/dashboard/reference/supported-locales) para ver la lista completa. Para usar un alias personalizado para una configuración regional —por ejemplo, `cn` en lugar de `zh`—, agrega una entrada en `customMapping` que apunte al código oficial. ```json title="gt.config.json" { "customMapping": { "cn": { "code": "zh" } } } ``` ## Elige qué archivos traducir [#files] Agrega un objeto `files` con una clave para cada tipo de archivo que quieras traducir. Cada tipo acepta una lista `include` de patrones glob que usan el marcador de posición `[locale]` para localizar los archivos de origen y guardar los archivos traducidos. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["fr", "es"], "files": { "json": { "include": ["locales/[locale]/**/*.json"] }, "mdx": { "include": ["content/docs/[locale]/**/*.mdx"] } } } ``` La CLI reemplaza `[locale]` por `defaultLocale` cuando busca archivos de origen, y por cada código de destino cuando guarda las traducciones. Consulta [Formatos de archivo](/docs/cli/reference/formats/gt-jsx-files) para ver las opciones por tipo y [`include`](/docs/cli/reference/config#files) para coincidencias avanzadas. ## Elige dónde se almacenan las traducciones [#storage] Si usas `gt-next`, `gt-react` o `gt-react-native`, decide cómo se distribuyen las traducciones. * **Guarda localmente** para incluir las traducciones en tu app. Agrega una entrada de `gt` con una ruta `output` que incluya `[locale]`. * **Publica en la CDN** para cargar las traducciones en tiempo de ejecución en lugar de incluirlas en la app. Establece `publish` en `true`. ```json title="gt.config.json" { "files": { "gt": { "output": "public/i18n/[locale].json" } } } ``` Consulta [la publicación en CDN](/docs/cli/reference/config#cdn-publishing) para gestionar la publicación a nivel global, por archivo o por comando. ## Añade tus credenciales [#credentials] El comando [`translate`](/docs/cli/reference/commands/translate) necesita una API key de producción y el ID del proyecto. No los incluyas en `gt.config.json`; configúralos como variables de entorno en su lugar. ```bash title=".env" GT_API_KEY=your-api-key GT_PROJECT_ID=your-project-id ``` Ejecuta [`gt auth`](/docs/cli/reference/commands/auth) para generarlos y escribirlos automáticamente en `.env.local`. ## Next steps - /docs/cli/guides/generating-translations - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx - /docs/cli/guides/branching