i18n-google-sheets-importer
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

i18n-google-sheets-importer

Automatically generate JSON translation files from Google Docs spreadsheets.

Installation

npm i i18n-google-sheets-importer --save-dev

Quick start

Create a Google Sheet spreadsheet in the following format:

Screen Shot 2019-12-20 at 00 56 23

Generate credentials.json file to access the Google Sheets API by following Step 1 from this guide.

Run the following command from the folder where credentials.json file is located:

i18n-google-sheets-importer import-google-sheet --spreadsheetId spreadsheetId

The script will generate translations folder containing files en.json, de.json and es.json.

Nesting is supported, so the above spreadsheet will get converted to a following JSON file (in case of English):

{
  "yes": "Yes",
  "namespace": {
    "hello": "Hello"
  }
}

API

import-google-sheet

i18n-google-sheets-importer import-google-sheet
  --spreadsheetId spreadsheetId
  [--output ./translations]
  [--sheetName Sheet1]
  [--credentials credentials.json]
  [--token token.json]

Generates JSON translation files from a Google Sheet spreadsheet.

Arguments:

  • spreadsheetId (required) - Sheet document ID, can be obtained from the URL: https://docs.google.com/spreadsheets/d/1NYsZowfHbtQqgWWPelYRlDg0OhknpCx2JuL8mE1DSk/edit?usp=sharing
  • output (default: translations) - Path to a folder where JSON files should be saved
  • sheetName (default: Sheet1) - Name of the sheet which contains i18n data
  • credentials (default: ./credentials.json) - Path to file with Google Sheets Node API credentials
  • token (default: ./token.json) - Path to a Google Sheets API token (it will get generated on the first run and it can be reused afterwards)

export-csv

i18n-google-sheets-importer export-csv --input ./translations --output ./translations.csv

Generates a single CSV file from existing JSON files.

Useful if you want to migrate the i18n in an existing project to Google Sheets (the generated CSV can be easily imported in Google Docs).

import-csv

i18n-google-sheets-importer import-csv --input ./translations.csv --output ./translations

Generates JSON translation files from a local CSV file.

License

MIT License

Dependents (0)

Package Sidebar

Install

npm i i18n-google-sheets-importer

Weekly Downloads

151

Version

1.0.1

License

MIT

Unpacked Size

24 kB

Total Files

17

Last publish

Collaborators

  • mchudy