DEV Community

Discussion on: Show me your best Open Source project

Collapse
 
razbakov profile image
Aleksey Razbakov

GitHub logo razbakov / sourcy

Synchronise data from Google Sheets

@razbakov /sourcy

Synchronise data from Google Sheets

Installation

yarn add @razbakov
/sourcy -D
Enter fullscreen mode Exit fullscreen mode

Add to package.json:

{
  "scripts": {
    "sourcy": "sourcy"
  }
}
Enter fullscreen mode Exit fullscreen mode

Create sourcy.config.js in project root:

module.exports = {
  sources: [
    {
      spreadsheetId: "spreadsheet id",
      range: "sheet name",
      output: "./locales/",
      transformer: "i18n",
      format: "yaml", // or json
    },
  ],
};
Enter fullscreen mode Exit fullscreen mode

Execute and follow instructions:

yarn sourcy
Enter fullscreen mode Exit fullscreen mode

Transformer: i18n

Input:

key en de es ru
home.title Home Startseite Página inicial Главная

Output:

en.yml
    home.title: Home

de.yml
    home.title: Startseite

es.yml
    home.title: Página inicial

ru.yml
    home.title: Главная