SlideShare a Scribd company logo
Improving your workflow
twitter.com/alexnewmn
github.com/alex.newman
alexnewman.io
Improving your workflow
● Why should you use gulp?
● gulp API
● gulp vs Grunt
● The power of gulp
● The future of gulp
● Gotchas
● Questions at the end
Quick Facts
● 44,000 downloads a day
● Used by
○ Bede Gaming
○ Google
○ Netflix
○ Soundcloud
● Uses Node.js and Orchestrator.js
● It’s open source!
Why another task runner?
● gulp aims to be simple for users
● gulp plugins should do one thing well
● Can work with existing node modules
● Grunt was great but did a few things wrong...
Why use gulp?
● Code over config
Code over config
Why use gulp?
● Code over config
● Minimal API
● Uses streams
Streams?
“If you dig a trench on a hill and
fill up the high end using a water
hose the water will run down the
hill along the trench”
Tim Caswell - HowToNode.org
● Streams use ‘pipes’, which allow us to pass
data through the stream.
●
●
● Streams are what makes gulp fast
Streams?
Why use gulp?
● Code over config
● Minimal API
● Uses streams
● Runs with maximum concurrency
Maximum Concurrency
● Runs tasks together using orchestrator
● Can minify your js and css at the same time
● Speed!!!
Why use gulp?
● Code over config
● Minimal API
● Uses streams
● Runs with maximum concurrency
● Fast!
gulp API
gulp.task
● Define a task name
● Set dependencies if required
● Can run multiple plugins
main.scss sass autoprefix min main.css
gulp
gulp
grunt...
gulp.task
gulp API
gulp.src
● Specify the file to be processed
● Can be a string or an array of files
● Can change the base of the file
● Accepts globbing - **/*.scss
gulp.src
gulp API
gulp.dest
● Where the processed file should be saved
● Can be used with src’s base option
gulp API
gulp.watch
● Watch files and run tasks when files change
● Accepts globbing - **/*.js
gulp API
That’s it!
Improving your workflow with gulp
gulp
● Uses streams
● Easy to maintain
● Fast!
● Runs concurrently
● Fast growing
Gruntvs
gulp
● Uses streams
● Easy to maintain
● Fast!
● Runs concurrently
● Fast growing
Gruntvs
● Has to run in order
● Difficult to maintain
● Slow(er)!
● Writes to Temp files
● More plugins
● Paved the way
Task runners at Bede
● Switched to gulp in August 2014
● Build times were almost twice as fast with
twice as many files to process
● Can use arrays instead of specifying each
file
● gulp in TeamCity for build tasks
The power of gulp
● gulp can run a lot of tasks and processes
easily and very fast
● Html minification, css minification, js linting,
image compression, clean files, browserify
bundles…
● Can use plugins without importing each one
The power of gulp
The power of gulp
The future of gulp
● gulp 4 is in the line
●
●
gulp.parallel and gulp.series
The future of gulp
● gulp 4 is in the line
●
●
● ES6
ES6 Support
The future of gulp
● gulp 4 is in the line
●
●
● ES6
● Error handling!
Gotchas
● Error handling
● Errors break the stream, cancelling the
task
● Can be intimidating
● Easy to rely on gulp plugins
Summary
● Why should you use gulp?
● Minimal API
● gulp vs Grunt
● The power of gulp
● The future of gulp
● Gotchas
alexnewman.io
github.com/alexnewmannn
twitter.com/alexnewmn
All code available on my github in the FrontendNE-Talk repository
Questions?

More Related Content

What's hot (20)

ODP
GulpJs - An Introduction
Knoldus Inc.
 
PPTX
JavaScript code academy - introduction
Jaroslav Kubíček
 
PPTX
JavaScript Task Runners - Gulp & Grunt
Lohith Goudagere Nagaraj
 
PDF
Automating your workflow with Gulp.js
Bo-Yi Wu
 
PDF
Frontend JS workflow - Gulp 4 and the like
Damien Seguin
 
PDF
Front-end development automation with Grunt
benko
 
PPTX
Grunt - The JavaScript Task Runner
Mohammed Arif
 
PPTX
Automating WordPress Plugin Development with Gulp
Mike Hale
 
PDF
Automating Large Applications on Modular and Structured Form with Gulp
Anderson Aguiar
 
PDF
Getting started with gulpjs
unmesh dusane
 
PDF
The Secrets of The FullStack Ninja - Part A - Session I
Oded Sagir
 
PDF
60分鐘完送百萬edm,背後雲端ci/cd實戰大公開
KAI CHU CHUNG
 
ODP
What grunt?
Lucio Martinez
 
PDF
Develop - Project Scaffolding
Kevin Cao
 
PPTX
Grunt to automate JS build
Tejaswita Takawale
 
PPTX
Introduction to using Grunt & Bower with WordPress theme development
James Bundey
 
PPTX
Gulp and bower Implementation
Prashant Shrestha
 
PDF
TDC2016SP - Esqueça Grunt ou Gulp. Webpack and NPM rule them all!
tdc-globalcode
 
PPTX
Go to gRPC
Naren Arya
 
GulpJs - An Introduction
Knoldus Inc.
 
JavaScript code academy - introduction
Jaroslav Kubíček
 
JavaScript Task Runners - Gulp & Grunt
Lohith Goudagere Nagaraj
 
Automating your workflow with Gulp.js
Bo-Yi Wu
 
Frontend JS workflow - Gulp 4 and the like
Damien Seguin
 
Front-end development automation with Grunt
benko
 
Grunt - The JavaScript Task Runner
Mohammed Arif
 
Automating WordPress Plugin Development with Gulp
Mike Hale
 
Automating Large Applications on Modular and Structured Form with Gulp
Anderson Aguiar
 
Getting started with gulpjs
unmesh dusane
 
The Secrets of The FullStack Ninja - Part A - Session I
Oded Sagir
 
60分鐘完送百萬edm,背後雲端ci/cd實戰大公開
KAI CHU CHUNG
 
What grunt?
Lucio Martinez
 
Develop - Project Scaffolding
Kevin Cao
 
Grunt to automate JS build
Tejaswita Takawale
 
Introduction to using Grunt & Bower with WordPress theme development
James Bundey
 
Gulp and bower Implementation
Prashant Shrestha
 
TDC2016SP - Esqueça Grunt ou Gulp. Webpack and NPM rule them all!
tdc-globalcode
 
Go to gRPC
Naren Arya
 

Similar to Improving your workflow with gulp (20)

PPTX
Take A Gulp at Task Automation
Joel Lord
 
PDF
Plumbin Pipelines - A Gulp.js workshop
Stefan Baumgartner
 
ODP
Introduction to GulpJs
Harish Gadiya
 
PDF
Building workflow in Javascript: Build the awesome with Gulp.
JavaScript Meetup HCMC
 
PDF
Building workflow in Javascript: Build the awesome with Gulp.
Silicon Straits
 
PPTX
Gulp js
Ken Gilbert
 
PDF
Modern Web Application Development Workflow - EclipseCon France 2014
Stéphane Bégaudeau
 
PDF
Quest for the Perfect Workflow for McrFRED
Andi Smith
 
PDF
Web development tools { starter pack }
François Michaudon
 
PPTX
NPM, Bower and Gulp Kickstart in Visual Studio
Axilis
 
PPT
Npmgruntgulp
Mallikarjuna G D
 
PDF
Modern Web Application Development Workflow - web2day 2014
Stéphane Bégaudeau
 
PPTX
Getting Started with Gulp
Jure Šuvak
 
PPTX
Word press workflows and gulp
Eli McMakin
 
PDF
Workflow automation for Front-end web applications
Mayank Patel
 
PDF
Grunt, Gulp & fabs: Build Systems and Development-Workflow for Modern Web-App...
Philipp Burgmer
 
PDF
Modern Web Application Development Workflow - EclipseCon US 2014
Stéphane Bégaudeau
 
PPTX
Make JavaScript Lean, Mean, and Clean
Blue Raster
 
PDF
Extending Build to the Client: A Maven User's Guide to Grunt.js
Petr Jiricka
 
Take A Gulp at Task Automation
Joel Lord
 
Plumbin Pipelines - A Gulp.js workshop
Stefan Baumgartner
 
Introduction to GulpJs
Harish Gadiya
 
Building workflow in Javascript: Build the awesome with Gulp.
JavaScript Meetup HCMC
 
Building workflow in Javascript: Build the awesome with Gulp.
Silicon Straits
 
Gulp js
Ken Gilbert
 
Modern Web Application Development Workflow - EclipseCon France 2014
Stéphane Bégaudeau
 
Quest for the Perfect Workflow for McrFRED
Andi Smith
 
Web development tools { starter pack }
François Michaudon
 
NPM, Bower and Gulp Kickstart in Visual Studio
Axilis
 
Npmgruntgulp
Mallikarjuna G D
 
Modern Web Application Development Workflow - web2day 2014
Stéphane Bégaudeau
 
Getting Started with Gulp
Jure Šuvak
 
Word press workflows and gulp
Eli McMakin
 
Workflow automation for Front-end web applications
Mayank Patel
 
Grunt, Gulp & fabs: Build Systems and Development-Workflow for Modern Web-App...
Philipp Burgmer
 
Modern Web Application Development Workflow - EclipseCon US 2014
Stéphane Bégaudeau
 
Make JavaScript Lean, Mean, and Clean
Blue Raster
 
Extending Build to the Client: A Maven User's Guide to Grunt.js
Petr Jiricka
 
Ad

More from frontendne (8)

PDF
Reacting pragmatically
frontendne
 
PDF
An introduction in to the world of front end automation - frontend ne (02 07-15)
frontendne
 
PDF
CSS Pseudo Classes
frontendne
 
PDF
CSS Selectors
frontendne
 
PDF
Marionette: the Backbone framework
frontendne
 
PDF
Marionette: Building your first app
frontendne
 
PDF
Css to-scss
frontendne
 
PDF
Speedy, solid, semantic layout with Susy
frontendne
 
Reacting pragmatically
frontendne
 
An introduction in to the world of front end automation - frontend ne (02 07-15)
frontendne
 
CSS Pseudo Classes
frontendne
 
CSS Selectors
frontendne
 
Marionette: the Backbone framework
frontendne
 
Marionette: Building your first app
frontendne
 
Css to-scss
frontendne
 
Speedy, solid, semantic layout with Susy
frontendne
 
Ad

Recently uploaded (20)

PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Python basic programing language for automation
DanialHabibi2
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
July Patch Tuesday
Ivanti
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 

Improving your workflow with gulp