Skip to content

localizely/localizely-cli

Repository files navigation

Localizely CLI

The Localizely CLI is a command line tool that helps you sync localization files between your project and the Localizely platform.

Localizely is a translation management platform that helps you translate texts in your app for targeting multilingual market.

Install

The Localizely CLI can be installed on all major platforms (MacOS, Linux, and Windows).
You can find more details about the installation below.

Download from GitHub Releases

Download the binary for your platform, unzip it, and place the executable in the path. That's it.

Docker

Run the Localizely CLI from Docker.

docker run --rm localizely/localizely-cli

Note: This requires you to have Docker installed on your system.

Build from source

Clone the repo and build from the source.

Clone the repository

git clone https://github.com/localizely/localizely-cli.git

Move to the project directory

cd localizely-cli

Download project dependencies

go mod download

Build the project

go build

After successfully completing the above steps, you should see the executable for your platform in the root of the project.

Note: This requires you to have Go installed on your system.

Usage

Below you can find a brief description of the available commands.

Init

Configure your Localizely client.

This command offers two modes: interactive and template. The first one will guide you through the configuration of your Localizely client. The second one will generate a template file that needs to be updated with your config data.
After executing this command, a configuration file (localizely.yml) will be created for you.

The interactive mode

localizely-cli init

The template mode

localizely-cli init --mode template

Note: API token entered through interactive mode is saved in the ~/.localizely/credentials.yaml file.

Pull

Pull localization files from Localizely.

Depending on your workflow, you can use this command by relying on the external configuration (the localizely.yml file), or by passing your configuration through flags.

Rely on the external configuration

localizely-cli pull

Pass configuration through flags

localizely-cli pull \
  --api-token 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
  --project-id 01234567-abcd-abcd-abcd-0123456789ab \
  --file-type json \
  --files "file[0]=lang/en.json","locale_code[0]=en","file[1]=lang/de_DE.json","locale_code[1]=de-DE" \
  --export-empty-as empty \
  --include-tags new,updated \
  --exclude-tags removed

Push

Push localization files to Localizely.

Depending on your workflow, you can use this command by relying on the external configuration (the localizely.yml file), or by passing your configuration through flags.

Rely on the external configuration

localizely-cli push

Pass configuration through flags

localizely-cli push \
  --api-token 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
  --project-id 01234567-abcd-abcd-abcd-0123456789ab \
  --files "file[0]=lang/en.json","locale_code[0]=en","file[1]=lang/de_DE.json","locale_code[1]=de-DE" \
  --overwrite \
  --reviewed=false \
  --tag-added new,new-feat-x \
  --tag-updated updated,updated-feat-x \
  --tag-removed removed

Update

Update Localizely CLI to the latest version.

This command checks if there is a newer version of the localizely-cli available. If there is, you will be prompted to confirm the update.

localizely-cli update

Contributing

If anything feels off, or you would like to propose some functionality, feel free to do it through GitHub Issue Tracker.

Useful links