Generate i18n JSON/JS files from a Google Sheets spreadsheet
npm install --save-dev google-sheets-i18n-generator
yarn add --dev google-sheets-i18n-generator
-
Create a Google Sheets spreadsheet to store the i18n strings
-
If needed, configure Google Sheets (only the first time):
More details
2.1. Enable the Google Sheets API for your project following this documentation
2.2. Create OAuth ID credentials for your application
2.3. Download the
client_secret_xxx.json
file of your application, then eventually move it to the right folder and rename it
-
Copy the ID of the spreadsheet (can be found in the URL
https://docs.google.com/spreadsheets/d/<spreadsheetId>/edit#gid=0
) -
Run the command:
gs-i18n <spreadsheetId>
-
If needed, follow the instructions to allow
gs-i18n
to access your Google Sheets and download thecredentials.json
files (only the first time) -
The JSON files are generated in the
./locales
folder
To customize the options, see the API section.
Usage: gs-i18n <spreadsheetId> [options]
Options:
-v, --version output the version number
-b, --beautify <number> number of spaces to insert white space in JSON/JS files (min: 0, max: 10) (default: 0)
-c, --client <path> path of client secret file (default: "./client_secret.json")
-f, --format <format> format of generated files (available values: "cjs", "esm", "json") (default: "json")
-k, --key <index> index of key column (default: 0)
-l, --lang <index> index of first language column (default: 1)
-o, --output <path> path of output directory (default: "./locales")
-r, --range <range> range of data to parse (default: "Sheet1")
-t, --token <path> path of credentials file (default: "./credentials.json")
-h, --help output usage information