https://github.com/cloakedninjas/grunt-crowdin-request
A grunt plugin to upload and download to crowdin.net
https://github.com/cloakedninjas/grunt-crowdin-request
Last synced: 23 days ago
JSON representation
A grunt plugin to upload and download to crowdin.net
- Host: GitHub
- URL: https://github.com/cloakedninjas/grunt-crowdin-request
- Owner: cloakedninjas
- License: mit
- Created: 2014-10-24T12:54:17.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-01-06T12:46:43.000Z (over 8 years ago)
- Last Synced: 2025-03-24T07:38:34.540Z (about 1 month ago)
- Language: JavaScript
- Size: 23.4 KB
- Stars: 4
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-MIT
Awesome Lists containing this project
README
## Getting Started
This plugin requires Grunt `~0.4.0`If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
```shell
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:
```js
grunt.loadNpmTasks('grunt-crowdin-request');
```## Configuration
_Run this task with the `grunt crowdin-request:` command._There are currently two supported actions:
- upload
- downloadTask targets, files and options may be specified according to the grunt [Configuring tasks](http://gruntjs.com/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
```javascript
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
```sh
grunt crowdin-request:upload
``````sh
grunt crowdin-request:download
```