# 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