gulp-twitter

Make your build system tweet

gulp-twitter

Twitter plugin for gulp 3.

First, install gulp-twitter as a development dependency:

npm install --save-dev gulp-twitter

Then, add it to your gulpfile.js:

var gulp = require('gulp');
var twitter = require('gulp-twitter');
 
// Construct `oauth` config. 
var oauth = {
    consumerKey: process.env.CONSUMER_KEY,
    consumerSecret: process.env.CONSUMER_SECRET,
    accessToken: process.env.ACCESS_TOKEN,
    accessTokenSecret: process.env.ACCESS_TOKEN_SECRET
};
 
gulp.task('tweetie', function () {
    return gulp.src('package.json')
           .pipe(twitter(oauth, 'Watch me while I tweet this.'));
});

or use it as a reporter for a lint or test plugin like so

var jshint = require('gulp-jshint');
 
gulp.task('scripts', function () {
    var message = function (file) {
        var ret = file.relative;
        if (file.jshint.success) {
            ret = ret  + ' looks good.';
        } else {
            ret = ret + ' seems off.';
        }
        return ret;
    };
    
    return gulp.src('*.js')
               .pipe(jshint())
               .pipe(twitter(oauth, message);
            
});

Type: Object Default: {}

OAuth credentials, i.e.

{
    "consumerKey": "CONSUMER_KEY",
    "consumerSecret": "CONSUMER_SECRET",
    "accessToken": "ACCESS_TOKEN",
    "accessTokenSecret": "ACCESS_TOKEN_SECRET"
}

Create a Twitter App and get OAuth credentials (if you haven’t already). Be careful, these tokens are like passwords so you should guard them carefully. For usage with Travis CI see the documentation on encryption keys.

Type: String or Function Default: ''

If you pass a Function this will be passed a gulp-util.File Object (see https://github.com/wearefractal/gulp-util/#new-fileobj) and should return a String, e.g. function (file) {return 'gulp-tweeting ' + file.relative;}.

MIT License © Jan Raasch