# gt: General Translation CLI tool: Быстрый старт
URL: https://generaltranslation.com/ru/docs/cli/quickstart.mdx
---
title: Быстрый старт
description: Узнайте, что делает CLI General Translation, когда его использовать и как перевести свой первый проект.
related:
links:
- /docs/cli/guides/generating-translations
- /docs/cli/guides/configuring
- /docs/cli/guides/managing-translations
- /docs/cli/guides/using-auto-jsx
---
CLI General Translation (`gt`) настраивает интернационализацию и переводит ваш проект из командной строки.
Он работает с [`gt-react`, `gt-next` и `gt-react-native`](/docs/react/overview), со сторонними i18n-библиотеками, такими как `next-intl` и `i18next`, а также с отдельными файлами, такими как JSON, YAML, Markdown и MDX.
## Что делает CLI [#what-it-does]
CLI предоставляет прямой доступ к:
* **Настройке** для установки зависимостей, интеграции вашего фреймворка и создания `gt.config.json`.
* **Переводу** для отправки исходного контента в API General Translation и сохранения результатов в вашей кодовой базе или CDN.
* **Компонентам для CI** для загрузки, постановки в очередь и скачивания переводов на отдельных этапах pipeline.
* **Проверке** для выявления ошибок перевода в проекте без вызова API.
## Когда использовать CLI [#when-to-use]
Используйте CLI, если хотите:
* Настроить новый проект для перевода с помощью пошагового мастера.
* Переводить проект в рамках сборки или CI-конвейера.
* Переводить автономные файлы контента без подключения библиотеки фреймворка.
* Хранить переводы в системе контроля версий вместе с исходным контентом.
## Быстрый старт [#quickstart]
Установите `gt`, настройте проект и запустите свой первый перевод. Вам понадобится существующий проект с `package.json` и установленный Node.js.
### 1. Установите `gt`
Установите CLI как зависимость для этапа разработки.
```bash
npm install gt --save-dev
```
```bash
yarn add --dev gt
```
```bash
bun add --dev gt
```
```bash
pnpm add --save-dev gt
```
### 2. Настройте проект
Запустите мастер настройки, чтобы определить используемый фреймворк, создать `gt.config.json` и сгенерировать учетные данные, если они требуются для выбранного способа настройки.
```bash
npx gt init
```
В монорепозитории запускайте команду из приложения, которое хотите локализовать. При запуске из корня рабочего пространства мастер завершится без изменения файлов.
[`gt init`](/docs/cli/reference/commands/init) — это интерактивный мастер, которому нужен терминал. В CI или другой неинтерактивной оболочке он может ожидать ввода, не пройти проверку или преждевременно завершиться, не создав `gt.config.json` и не записав учетные данные. Для таких окружений используйте [Неинтерактивную настройку для CI](#ci-setup).
Мастер настройки задаёт локаль по умолчанию и целевые локали, выбирает, где хранятся переводы. Если выбранной конфигурации нужны учетные данные, он может записать API-ключ и идентификатор проекта в `.env.local`. Подробно об этой настройке см. в разделе [Настройка CLI](/docs/cli/guides/configuring), а полное описание команды — в [`gt init`](/docs/cli/reference/commands/init).
*Примечание: теперь у вас должен быть файл `gt.config.json` в корне проекта. Если мастер сгенерировал учетные данные, `.env.local` содержит `GT_API_KEY` и `GT_PROJECT_ID`. Конфигурация Vite с локальными переводами в бандле не использует учетные данные, поэтому добавьте их на следующем шаге перед переводом.*
### 3. Добавьте свой production API-ключ
Для команды [`translate`](/docs/cli/reference/commands/translate) нужны production API-ключ и идентификатор проекта. Мастер может сгенерировать их за вас, либо создайте их на [странице API Keys](https://generaltranslation.com/dashboard). Задайте их в виде переменных окружения, чтобы CLI мог их прочитать.
```bash title=".env.local"
GT_API_KEY=your-api-key
GT_PROJECT_ID=your-project-id
```
*Примечание: укажите свой API-ключ в переменной окружения — никогда не добавляйте его в `gt.config.json`.*
### 4. Переведите свой проект
Запустите команду [`translate`](/docs/cli/reference/commands/translate), чтобы перевести все файлы, указанные в `gt.config.json`, а также все встроенные компоненты [``](/docs/react/reference/components/t) и элементы словаря в исходном коде.
```bash
npx gt translate
```
Переводы сохраняются в вашей кодовой базе и готовы к коммиту. Запускайте это в вашем CI-конвейере перед сборкой для продакшена. Полное описание workflow см. в разделе [Генерация переводов](/docs/cli/guides/generating-translations).
## Неинтерактивная настройка для CI [#ci-setup]
Мастеру настройки нужен интерактивный терминал, поэтому его нельзя запустить в CI или других неинтерактивных средах. Выполните настройку вручную: закоммитьте `gt.config.json`, передайте учетные данные через переменные окружения и запустите [`translate`](/docs/cli/reference/commands/translate) с этой конфигурацией.
### 1. Добавьте `gt.config.json`
Создайте файл самостоятельно и закоммитьте его, чтобы CLI знал, что переводить. Минимальная конфигурация задает исходную и целевые локали, а также запись `files`, чтобы у [`translate`](/docs/cli/reference/commands/translate) было с чем работать. Приведенная ниже запись `gt` сохраняет переводы фреймворка (из `gt-next`, `gt-react` или `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"
}
}
}
```
Чтобы переводить вместо этого автономные файлы, добавьте тип файла, например `json` или `mdx`, и укажите для него glob-шаблон `include` вместо записи `gt` (или наряду с ней). Сведения о параметрах файлов и хранилища см. в разделе [Настройка CLI](/docs/cli/guides/configuring), а описание всех полей — в [справочнике по конфигурации](/docs/cli/reference/config).
### 2. Укажите свои учетные данные
Укажите свой production API-ключ и идентификатор проекта в виде переменных окружения в настройках секретов вашего CI-провайдера, а не в закоммиченном файле. Создайте их на [странице API Keys](https://generaltranslation.com/dashboard).
```bash
GT_API_KEY=your-api-key
GT_PROJECT_ID=your-project-id
```
### 3. Запустите команду translate
Запустите [`translate`](/docs/cli/reference/commands/translate) перед сборкой для продакшена. Передайте `--config`, чтобы указать путь к файлу конфигурации.
```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