Slide 1

Slide 1 text

Getting Started with Gulp.js

Slide 2

Slide 2 text

Install Node.js 1 nodejs.org

Slide 3

Slide 3 text

Get to know the command line. 2 ➜ npm -v

Slide 4

Slide 4 text

Install Gulp globally 3 ➜ sudo npm install -g gulp

Slide 5

Slide 5 text

Install Gulp globally 3 ➜ gulp -v

Slide 6

Slide 6 text

Install Gulp locally 4 ➜ cd ~/Casey/Sites/project

Slide 7

Slide 7 text

Install Gulp locally 4 ➜ project npm init npm init creates a package.json file in our project directory.

Slide 8

Slide 8 text

Install Gulp locally 4 ➜ project npm install --save-dev gulp —save-dev instructs npm to add the dependence to the package.json file we created earlier.

Slide 9

Slide 9 text

Setting up our Gulpfile 5 WHAT WE NEED GULP TO DO Lint and concatenate our JavaScript Compile our Sass files Minify and rename everything Reload our browser after each change

Slide 10

Slide 10 text

Setting up our Gulpfile 5 ➜ project npm install gulp-jshint gulp-sass gulp-concat gulp-uglify gulp-rename gulp-livereload --save-dev

Slide 11

Slide 11 text

gulpfile.js // Include gulp var gulp = require('gulp'), ! // Include Our Plugins jshint = require('gulp-jshint’), sass = require(‘gulp-sass'), concat = require(‘gulp-concat’), uglify = require(‘gulp-uglify'), rename = require(‘gulp-rename’); livereload = require(‘gulp-livereload'); Set up Gulp includes

Slide 12

Slide 12 text

gulpfile.js // Lint Task gulp.task('lint', function() { return gulp.src('js/*.js') .pipe(jshint()) .pipe(jshint.reporter('default')); }); Set up the Lint task

Slide 13

Slide 13 text

gulpfile.js // Compile Our Sass gulp.task('sass', function() { return gulp.src('scss/*.scss') .pipe(sass()) .pipe(gulp.dest('css')); }); Set up the Sass task

Slide 14

Slide 14 text

gulpfile.js // Concatenate & Minify JS gulp.task('scripts', function() { return gulp.src('js/*.js') .pipe(concat('main.js')) .pipe(gulp.dest('js')) .pipe(rename('main.min.js')) .pipe(uglify()) .pipe(gulp.dest('js')); }); Concatenate and Minify the JS

Slide 15

Slide 15 text

gulpfile.js gulp.task('watch', function() { server.listen(35729, function (err) { if (err) { return console.log(err) }; ! // Watch .scss files gulp.watch('scss/**/*.scss', ['sass']); ! // Watch .js files gulp.watch('js/**/*.js', ['scripts']); ! }); }); Watch the files and reload the browser when changed

Slide 16

Slide 16 text

Watch our files for changes 6 ➜ project gulp watch

Slide 17

Slide 17 text

Add more plugins. 7

Slide 18

Slide 18 text

Profit. 8