# gt: General Translation CLI tool: Inicio rápido
URL: https://generaltranslation.com/es/docs/cli/quickstart.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Usa el CLI de General Translation para traducir tu proyecto desde la línea de comandos.

El CLI de General Translation (`gt`) configura la internacionalización y traduce tu proyecto desde la línea de comandos.

Funciona con [`gt-react`, `gt-next` y `gt-react-native`](/docs/react/overview), con bibliotecas de i18n de terceros como `next-intl` e `i18next`, y con archivos independientes como JSON, YAML, Markdown y MDX.

## Qué hace la CLI [#what-it-does]

La CLI te da acceso directo a:

* **Configuración** para instalar dependencias, integrar tu framework y crear un `gt.config.json`.
* **Traducción** para enviar tu contenido de origen a la API de General Translation y guardar los resultados en tu base de código o en la CDN.
* **Componentes de CI** para subir, poner en cola y descargar traducciones en distintas etapas del flujo.
* **Acceso a la API** para solicitudes raw autenticadas y descubrimiento de OpenAPI integrado con [`gt api`](/docs/cli/reference/commands/api).
* **Validación** para comprobar si hay errores de traducción en tu proyecto sin llamar a la API.

## Cuándo usar la CLI [#when-to-use]

Usa la CLI cuando quieras:

* Configurar un proyecto nuevo para traducir con un asistente guiado.
* Traducir tu proyecto como parte de una compilación o de un flujo de CI.
* Traducir archivos de contenido independientes sin añadir una biblioteca de framework.
* Mantener las traducciones en el control de versiones junto con tu contenido de origen.

## Inicio rápido [#quickstart]

Instala `gt`, configura tu proyecto y ejecuta tu primera traducción. Necesitas un proyecto existente con un archivo `package.json` y Node.js 20 o posterior instalado.

### 1. Instala `gt`

Instala la CLI como dependencia de desarrollo.

<Tabs items={['npm', 'yarn', 'bun', 'pnpm']}>
  <Tab value="npm">
    ```bash
    npm install gt --save-dev
    ```
  </Tab>

  <Tab value="yarn">
    ```bash
    yarn add --dev gt
    ```
  </Tab>

  <Tab value="bun">
    ```bash
    bun add --dev gt
    ```
  </Tab>

  <Tab value="pnpm">
    ```bash
    pnpm add --save-dev gt
    ```
  </Tab>
</Tabs>

### 2. Configura tu proyecto

Ejecuta [`gt init`](/docs/cli/reference/commands/init) para detectar tu framework, crear `gt.config.json` y, si lo deseas, configurar un Project y una clave de desarrollo. El asistente te pedirá que inicies sesión cuando ese paso lo requiera.

```bash
npx gt init
```

En un monorepo, ejecuta el comando desde la aplicación que quieras localizar. Si lo ejecutas desde la raíz del workspace, el asistente se detiene sin modificar ningún archivo.

<Callout type="warn">
  Sin una terminal, [`gt init`](/docs/cli/reference/commands/init) no muestra preguntas. Si faltan respuestas, se detiene antes de modificar archivos e indica las opciones que debes pasar; consulta [ejecuciones headless](/docs/cli/reference/commands/init#headless). Para CI, usa la [configuración no interactiva para CI](#ci-setup).
</Callout>

El asistente establece tu configuración regional predeterminada y tus configuraciones regionales de destino, y elige dónde se almacenan las traducciones. También puede escribir una clave de desarrollo y el ID del Project en `.env.local`. Consulta [`gt init`](/docs/cli/reference/commands/init) para ver el comando completo.

*Nota: Ahora deberías tener un `gt.config.json` en la raíz de tu proyecto. La configuración de Vite con almacenamiento local en el bundle puede omitir el inicio de sesión y las credenciales; completa el siguiente paso antes de traducir.*

### 3. Verifica tus credenciales

El comando [`translate`](/docs/cli/reference/commands/translate) necesita un ID del Project y tu sesión guardada o una API Key. Si la configuración inicial no los incluyó, ejecuta [`gt login`](/docs/cli/reference/commands/login) y configura tu ID del Project:

```bash title=".env.local"
GT_PROJECT_ID=your-project-id
```

(Consulta [Credenciales de la CLI](/docs/cli/guides/configuring#credentials)).

### 4. Traduce tu proyecto

Ejecuta el comando [`translate`](/docs/cli/reference/commands/translate) para traducir todos los archivos configurados en `gt.config.json`, junto con cualquier componente inline [`<T>`](/docs/react/reference/components/t) y las entradas del diccionario en tu código fuente.

```bash
npx gt translate
```

Las traducciones se guardan en tu base de código, listas para hacer commit. Ejecuta esto en tu flujo de CI antes de compilar para producción. Consulta [Generating translations](/docs/cli/guides/generating-translations) para ver el flujo de trabajo completo.

## Configuración no interactiva para CI [#ci-setup]

En CI, configura el proyecto manualmente: haz commit de un `gt.config.json`, proporciona tus credenciales como variables de entorno y ejecuta [`translate`](/docs/cli/reference/commands/translate) con esa configuración.

### 1. Añade un `gt.config.json`

Crea el archivo tú mismo y haz commit para que la CLI sepa qué traducir. Una configuración mínima define las configuraciones regionales de origen y de destino, además de una entrada `files` para que [`translate`](/docs/cli/reference/commands/translate) tenga algo con lo que trabajar. La entrada `gt` de abajo almacena localmente, en la ruta indicada, las traducciones del framework (de `gt-next`, `gt-react` o `gt-react-native`).

```json title="gt.config.json"
{
  "$schema": "https://assets.gtx.dev/config-schema.json",
  "defaultLocale": "en",
  "locales": ["fr", "es"],
  "files": {
    "gt": {
      "output": "public/_gt/[locale].json"
    }
  }
}
```

Si en su lugar quieres traducir archivos independientes, agrega un tipo de archivo como `json` o `mdx` con un glob `include` en lugar de (o junto con) la entrada `gt`. Consulta [Configurar la CLI](/docs/cli/guides/configuring) para ver las opciones de archivo y almacenamiento, y la [referencia de configuración](/docs/cli/reference/config) para conocer todos los campos.

### 2. Define tus credenciales

Define tu clave de API de Project y tu ID del Project como variables de entorno en la configuración de secretos de tu proveedor de CI, no en un archivo versionado. Crea la clave en el [Dashboard](/docs/platform/dashboard/reference/api-keys) o con [`gt api-key create`](/docs/cli/reference/commands/api-key-create) y concédele los permisos **Files &gt; Write** y **Translation queue &gt; Enabled** (añade **Context &gt; Write** si generas contexto); la clave de desarrollo que crea el asistente no basta.

```bash
GT_API_KEY=your-api-key
GT_PROJECT_ID=your-project-id
```

### 3. Ejecuta el comando `translate`

Ejecuta [`translate`](/docs/cli/reference/commands/translate) antes de compilar para producción. Usa `--config` para indicar tu archivo de configuración.

```bash
npx gt translate --config gt.config.json
```

## Next steps

- /docs/cli/guides/generating-translations
- /docs/cli/guides/configuring
- /docs/cli/guides/managing-translations
- /docs/cli/guides/using-auto-jsx

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
