Skip to content

CLI tool for translating strings and generating i18n files

License

Notifications You must be signed in to change notification settings

matthoiland/localize-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Localize CLI

CLI tool for translating strings and generating i18n files using the Google Translate API.

Alt text

Installation

npm install --save localize-cli

Configure Google Translate API

To use this tool you'll need a Google Cloud Platform account to access the Google Translate API. It's not entirely painful to set up – I believe in you!

  1. Create a Google Cloud Platform project
  2. Enable billing
  3. Enable the Google Cloud Translation API
  4. Configure Google Cloud authentication on your local machine
    • Set up authentication with a service account

    • Move that json credentials file to somewhere like ~/.google/credentials.json

    • Update ~/.bash_profile with export GOOGLE_APPLICATION_CREDENTIALS=~/.google/credentials.json

    • Reload bash profile with source ~/.bash_profile

    • Copy the project_id for the next step

Configure Localize CLI

Create a config file in your root directory called localize.cli.js with the following:

module.exports = {

  base_locale: 'en',
  
  locales: ['en', 'ja'],

  output: './locales.json',

  google_cloud_project_id: 'MY_GOOGLE_PROJECT_ID'
}

Usage

Typing this command in your terminal...

localize base.hello "Hello world"

... will generate a locales.json file like this:

{
  "en": {
    "base": {
      "hello": "Hello World"
    }
  },
  "ja": {
    "base": {
      "hello": "こんにちは世界"
    }
  }
}

TODO

  • Publish to NPM – npm publish
  • Command for removing translations by JSON key
  • Allow config to exist in package.json or as CLI params
  • Option to break each locale into separate JSON files
  • Re-listen to Vespertine by Björk

About

CLI tool for translating strings and generating i18n files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published