Skip to content

cloakedninjas/grunt-crowdin-request

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Getting Started

This plugin requires Grunt ~0.4.0

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-crowdin-request --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-crowdin-request');

Configuration

Run this task with the grunt crowdin-request:<action> command.

There are currently two supported actions:

  • upload
  • download

Task targets, files and options may be specified according to the grunt Configuring tasks guide.

Options

api-key

Type: String Default: ''

Your Crowdin API key. Remember to keep it secret!

project-identifier

Type: String Default: ''

The name of your project at Crowdin. What you access at https://crowdin.com/project/

filename

Type: String Default: ''

The filename to send to Crowdin. Can be anything you like to identify a file. This option can also use the current Git branch you might be on. Use #GIT_BRANCH# to insert the branch name.

branch

Type: String Default: ''

The name of your Crowdin branch. More info about Crowdin branches at https://support.crowdin.com/articles/versions-management/

Upload

srcFile

Type: String Default: ''

The location of the file to be uploaded, relative to Gruntfile.js

Download

targetLanguage

Type: String Default: 'all'

Target language files to download. If not specified, 'all' will be used and all available languages will be downloaded.

outputDir

Type: String Default: ''

The folder where translations should be downloaded to. This will extract the .zip from Crowdin and create subdirectories for each locale contained therein.

renameFileTo

Type: String Default: ''

If provided will rename the download files from Crowdin to be renamed to something different than what they were uploaded as. The use case being you upload with a Git branch filename But want to download to a single consistent filename.

Sample config

var config = {
    'crowdin-request': {

        options: {
            'api-key': 'xyz123',
            'project-identifier': 'test-project',
            filename: '#GIT_BRANCH#.pot'
        },

        upload: {
            srcFile: 'i18n/translations.pot'
        },

        download: {
            outputDir: 'i18n',
            renameFileTo: 'messages-#LOCALE#.po'
        }
    }
};

grunt.initConfig(config);

Usage

grunt crowdin-request:upload
grunt crowdin-request:download

About

A grunt plugin to upload and download to crowdin.net

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •