# gt: General Translation CLI tool: Automatic Translation URL: https://generaltranslation.com/en-US/docs/cli.mdx --- title: Automatic Translation description: How to automatically translate your project using the General Translation CLI tool --- ```bash npx gt@latest ``` **Formerly `gtx-cli`:** This tool has been renamed from `gtx-cli` to `gt`. If you were previously using `gtx-cli`, update your scripts to use `gt` instead. All commands remain the same. ## Overview The General Translation CLI tool (`gt`) allows you to automatically translate your project into any of the [supported languages](/docs/platform/supported-locales). It provides first-class support for [`gt-next`](/docs/next) and [`gt-react`](/docs/react) with your project, allowing you to scan your project for translatable content, translate your project, and generate translation data JSON files. The CLI tool can also be used to generate translations for third-party i18n libraries like [next-intl](https://next-intl.dev/) or [i18next](https://react.i18next.com/). Lastly, the CLI tool can be used to translate JSON, Markdown, MDX, JS, and TS files. A Production API key is required for the `translate` command. Get one for free at [generaltranslation.com](https://generaltranslation.com)! --- There are two main commands you should be aware of: `init` and `translate`. - [The `init` command](/docs/cli/init) is used to set up your project. It provides a step-by-step wizard that will configure your project for internationalization, including: * Setting up plugins and React providers * Generating API keys * Configuring your project's locales and files structure - [The `translate` command](/docs/cli/translate) is meant to be added to your CI/CD pipeline. It is used to scan your project for content to be translated. The content is then uploaded to a CDN or added to your app bundle to be used at runtime. ## Getting started Depending on what i18n library your project is using, please follow one of the following tutorials: - [gt-next](/docs/cli/formats/gt) - [gt-react](/docs/cli/formats/gt) - [gt-react-native](/docs/cli/formats/gt) - [next-intl](/docs/cli/formats/json) - [i18next](/docs/cli/formats/json) - [JSON](/docs/cli/formats/json) - [Markdown](/docs/cli/formats/mdx) ## Usage | Command | Description | | ---------------------------------------------- | --------------------------------------------------------------------------------------------- | | [`npx gt init`](/docs/cli/init) | Run the GT setup wizard. | | [`npx gt configure`](/docs/cli/configure) | Configure your project's GT settings. | | [`npx gt translate`](/docs/cli/translate) | Translates your project via the GT API. | | [`npx gt upload`](/docs/cli/upload) | Uploads source files and translations to the General Translation platform. | | [`npx gt enqueue`](/docs/cli/enqueue) | Enqueues files for translation without downloading results. | | [`npx gt download`](/docs/cli/download) | Downloads translations that were previously enqueued or staged. | | [`npx gt auth`](/docs/cli/auth) | Generate an API key and project ID for your project. | | [`npx gt generate`](/docs/cli/generate) | Generates a new translation data JSON file. Should be used when using the library standalone. | ## Guides | Guide | Description | | ---------------------------------------------- | --------------------------------------------------------------------------------------------- | | [Branching](/docs/cli/branching) | Track translations separately for different git branches. |