1
0
mirror of https://github.com/exane/not-gwent-online synced 2024-10-31 10:36:53 +00:00
not-gwent-online/gulpfile.js

79 lines
2.1 KiB
JavaScript
Raw Normal View History

2015-06-10 14:25:27 +00:00
var browserify = require('browserify');
var gulp = require('gulp');
var source = require('vinyl-source-stream');
var fs = require("fs");
var babelify = require("babelify");
var livereload = require("gulp-livereload");
var sass = require("gulp-sass");
2015-06-22 15:29:01 +00:00
var handlebars = require("browserify-handlebars");
2015-06-10 14:25:27 +00:00
livereload({start: true});
//fast install
//npm i --save-dev browserify vinyl-source-stream babelify gulp-livereload gulp gulp-sass
gulp.task('browserify', function(){
2015-06-19 16:40:35 +00:00
browserify('./client/js/main.js', {standalone: "app", debug: true})
2015-06-26 12:40:19 +00:00
.transform(handlebars).on("error", function(err){
console.log(err);
})
2015-06-10 14:25:27 +00:00
.transform(babelify)
.bundle().on("error", function(err){
console.log(err);
})
.pipe(source('app.js').on("error", function(err){
console.log(err);
}))
2015-06-19 16:40:35 +00:00
.pipe(gulp.dest('./public/build/').on("error", function(err){
2015-06-10 14:25:27 +00:00
console.log(err);
}));
2015-06-19 16:40:35 +00:00
2015-06-10 14:25:27 +00:00
});
gulp.task('sass', function(){
2015-06-19 16:40:35 +00:00
gulp.src('./client/scss/main.scss')
2015-06-10 14:25:27 +00:00
.pipe(sass({
outputStyle: 'compressed'
}).on("error", function(err){
console.log(err);
}))
2015-06-19 16:40:35 +00:00
.pipe(gulp.dest('./public/build/').on("error", function(err){
2015-06-10 14:25:27 +00:00
console.log(err);
}))
.pipe(livereload().on("error", function(err){
console.log(err);
}));
});
2015-06-19 12:14:37 +00:00
gulp.task("unit tests", function(){
2015-06-19 16:40:35 +00:00
browserify('./test/src/mainSpec.js', {standalone: "app", debug: true})
2015-06-19 12:14:37 +00:00
.transform(babelify)
.bundle().on("error", function(err){
console.log(err);
})
.pipe(source('spec.js').on("error", function(err){
console.log(err);
}))
.pipe(gulp.dest('./test/spec/').on("error", function(err){
console.log(err);
}));
})
2015-06-10 14:25:27 +00:00
gulp.task("watch", function(){
2015-06-19 16:40:35 +00:00
gulp.watch("./client/js/*", ["browserify"]);
2015-06-22 15:42:48 +00:00
gulp.watch("./client/templates/*", ["browserify"]);
2015-06-19 16:40:35 +00:00
gulp.watch("./client/scss/*", ["sass"]);
2015-06-21 14:50:50 +00:00
gulp.watch("./client/*.html", ["index"]);
2015-06-19 16:40:35 +00:00
gulp.watch("./test/src/*", ["unit tests"]);
})
gulp.task("index", function() {
gulp.src("./client/index.html")
.pipe(gulp.dest("./public/"));
gulp.src("./client/css/bootstrap.css")
.pipe(gulp.dest("./public/build"));
2015-06-10 14:25:27 +00:00
})
2015-06-19 16:40:35 +00:00
gulp.task("default", ["watch", "browserify", "sass", "unit tests", "index"]);