diff options
Diffstat (limited to 'gulpfile.js')
-rw-r--r-- | gulpfile.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/gulpfile.js b/gulpfile.js new file mode 100644 index 000000000..de893a4f5 --- /dev/null +++ b/gulpfile.js @@ -0,0 +1,56 @@ +#!/usr/bin/env node + +'use strict'; + +var del = require('del'); +var gulp = require('gulp'); +var browserify = require('gulp-browserify-thin'); +var jshint = require('gulp-jshint'); +var uglify = require("gulp-uglify"); +var rename = require("gulp-rename"); +var bower = require('bower'); + +var DEST = './dist/'; + +gulp.task('bower', function(cb){ + bower.commands.install().on('end', function (installed){ + console.log(installed); + cb(); + }); +}); + +gulp.task('lint', function(){ + return gulp.src(['./*.js', './lib/*.js']) + .pipe(jshint()) + .pipe(jshint.reporter('default')); +}); + +gulp.task('clean', ['lint'], function(cb) { + del([ DEST ], cb); +}); + +gulp.task('build', ['clean'], function () { + return browserify() + .require('./index.js', { expose: 'web3'}) + .bundle('ethereum.js') + .on('error', function(err) + { + console.error(err.toString()); + process.exit(1); + }) + .pipe(gulp.dest( DEST )); +}); + +gulp.task('minify', ['build'], function(){ + return gulp.src( DEST + 'ethereum.js') + .pipe(gulp.dest( DEST )) + .pipe(uglify()) + .pipe(rename('ethereum.min.js')) + .pipe(gulp.dest( DEST )); +}); + +gulp.task('watch', function() { + gulp.watch(['./lib/*.js'], ['lint', 'build', 'minify']); +}); + +gulp.task('default', ['bower', 'lint', 'build', 'minify']); |