Last active
June 1, 2017 23:19
-
-
Save nevadajames/f0610404f292b4df0d389efa15360675 to your computer and use it in GitHub Desktop.
Gulpfile for some useful functions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var gulp= require('gulp'); | |
| var sass = require('gulp-sass'); | |
| var browserSync = require('browser-sync').create(); | |
| var cssnano = require('gulp-cssnano'); | |
| var rename = require('gulp-rename'); | |
| var uglify = require('gulp-uglify'); | |
| var concat = require('gulp-concat'); | |
| var imagemin = require('gulp-imagemin'); | |
| //Compìle Css from Sass and live reload on save | |
| gulp.task('sass', function(){ | |
| return gulp.src('app/scss/**/*.scss') | |
| .pipe(sass()) //using gulp-sass | |
| .pipe(gulp.dest('app/css')) | |
| .pipe(browserSync.reload({ | |
| stream: true | |
| })) | |
| }); | |
| gulp.task('browserSync', function() { | |
| browserSync.init({ | |
| server: { | |
| baseDir: 'app' | |
| }, | |
| }) | |
| }); | |
| gulp.task('watch', ['browserSync', 'sass'], function(){ | |
| gulp.watch('app/scss/**/*.scss', ['sass']); | |
| // Other watchers | |
| gulp.watch('app/*.html', browserSync.reload); | |
| gulp.watch('app/js/**/*.js', browserSync.reload); | |
| }); | |
| // Autoprefix, minify and rename CSS | |
| gulp.task('cssnano', function() { | |
| return gulp.src('app/css/**/*.css') | |
| .pipe(autoprefixer({ | |
| browsers: ['last 4 versions'], | |
| cascade: false | |
| })) | |
| .pipe(cssnano()) | |
| .pipe(rename({suffix:'.min'})) | |
| .pipe(gulp.dest('./dist/css')) | |
| }); | |
| // Minify and concatenate .js files | |
| var jsFiles = 'app/js/**/*.js', | |
| jsDest = './dist/scripts'; | |
| gulp.task('scripts', function() { | |
| return gulp.src(jsFiles) | |
| .pipe(concat('scripts.js')) | |
| .pipe(gulp.dest(jsDest)) | |
| .pipe(rename('scripts.min.js')) | |
| .pipe(uglify()) | |
| .pipe(gulp.dest(jsDest)); | |
| }); | |
| //optimize images | |
| gulp.task('jpgs', function() { | |
| return gulp.src('app/img/*.jpg') | |
| .pipe(imagemin({ progressive: true })) | |
| .pipe(gulp.dest('./dist/img')); | |
| }); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment