Automating
Front-End Workflow

1
Mohammed Arif
A husband, father and a Front End Specialist at Sapient-Nitro.

https://github.com/mdarif
https://twitter.com/#!/arif_iq
http://in.linkedin.com/in/mohdarif
www.mohammedarif.com

2
AGENDA

 What is automation?
 Why automation?
 Old way of doing things
 New way?
 Yeoman
 Grunt
 Grunt Tips
 Bower
 Showtime
 Q&A

3
WHAT IS AUTOMATION?

The technique of making a process, or a system operate

automatically.

4
WHY AUTOMATION?

To stay productive!

5
OLD WAY OF DOING THINGS?

•
•
•
•

Scaffolding
Download libraries
Download templates
Download frameworks

•
•
•
•
•

Watch Sass / Less / Stylus
Watch CoffeeScript
Watch Jade / Haml
LiveReload
JS / CSS Linting…
6
NEW WAY?

7
YEOMAN

8
9
YEOMAN - Scaffold, write less with Yo

“Yeoman is a robust and opinionated client-side stack, comprising
tools and frameworks that can help developers quickly build beautiful
web applications”

http://yeoman.io/whyyeoman.html

10
YEOMAN - Scaffold, write less with Yo

• scaffolding, write less with Yo
• dependency management with Bower
• Wiring and integration of a number of commonly
used grunt tasks
• build, preview and test with Grunt
• maintained separately
• play well together, all part of the Yeoman workflow

11
YEOMAN - Scaffold, write less with Yo
$ npm install -g yo

12
YEOMAN - Scaffold, write less with Yo
$ yo webapp

•
•
•
•
•
•
•
•

HTML5 Boilerplate
Twitter Bootstrap
Project Structure
Mocha Tests
RequireJS (optional)
Modernizr (optional)
Build process
...

13
14
GRUNT - Build, preview and test with Grunt

Grunt is a task-based command line build tool for JavaScript
projects.

http://www.slideshare.net/arif_iq/grunt-22465541

15
TASK-BASED?

•
•
•
•
•
•
•

Unit testing
JS linting
Concatenating/minifying
Image optimization
Replace scripts in html files
SASS
…

16
GRUNT TIPS

grunt-uncss
Remove unused CSS across your project at build time.

https://github.com/addyosmani/grunt-uncss

17
GRUNT TIPS

Build directly from DevTools
grunt-devtools extension

https://github.com/vladikoff/grunt-devtools

18
Bower

19
BOWER - Manage dependencies with Bower

A package manager for the web.

20
BOWER - Manage dependencies with Bower

Runs over:
• Git
• HTTP(s)
• Zip
• npm

21
BOWER - Manage dependencies with Bower

$ bower list
$ bower search
$ bower search jquery
$ bower install
$ bower install jquery –save-dev

22
BOWER - Manage dependencies with Bower

• maintained by Twitter and the open-source
community
• configuration in bower.json

https://egghead.io/lessons/bower-introduction-and-setup

23
SHOWTIME

24
Q&A
Thank You!

26

More Related Content

PDF
Front end workflow with yeoman
PDF
Rapidly scaffold your frontend with yeoman
PPT
Django for n00bs
PDF
Real World Progressive Web Apps (Building Flipkart Lite)
PDF
Modern Web Applications Utilizing HTML5 (Dev Con TLV 06-2013)
PDF
Modern Web Application Development Workflow - EclipseCon France 2014
PDF
Modern Web Application Development Workflow - EclipseCon US 2014
PDF
Paul Campbell — A Modern Approach to Third-Party Embedded Widgets (Turing Fes...
Front end workflow with yeoman
Rapidly scaffold your frontend with yeoman
Django for n00bs
Real World Progressive Web Apps (Building Flipkart Lite)
Modern Web Applications Utilizing HTML5 (Dev Con TLV 06-2013)
Modern Web Application Development Workflow - EclipseCon France 2014
Modern Web Application Development Workflow - EclipseCon US 2014
Paul Campbell — A Modern Approach to Third-Party Embedded Widgets (Turing Fes...

What's hot (20)

PDF
Building the Front End with AngularJS
PDF
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
PDF
The Hitchhiker's Guide to Building a Progressive Web App
PDF
Nürnberg WooCommerce Talk - 11/24/16
PDF
Building a Spring Boot Application - Ask the Audience! (from JVMCon 2018)
PDF
WordPress London Developer Operations For Beginners
PPTX
Blazor Full-Stack
PDF
Coding with jetpack
PPTX
Phonegap Day 2016: Ember/JS & Hybrid Apps Tips
PDF
Way of the Future
PDF
Task runners + theming automating your workflow
PPTX
Best Practices for creating WP REST API by Galkin Nikita
PDF
Web Performance & You - HighEdWeb Arkansas Version
ODP
How I Learned to Stop Worrying and Backup WordPress
PPTX
WP-CLI: WordCamp Nashville 2016
PDF
Embrace Native Async Nature of JavaScript in WebDriver JS - SeleniumConf Aust...
PPTX
Modern Front End Tools & Workflow
PPTX
PDF
Play Framework on Google App Engine - Productivity Stack
PDF
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...
Building the Front End with AngularJS
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web App
Nürnberg WooCommerce Talk - 11/24/16
Building a Spring Boot Application - Ask the Audience! (from JVMCon 2018)
WordPress London Developer Operations For Beginners
Blazor Full-Stack
Coding with jetpack
Phonegap Day 2016: Ember/JS & Hybrid Apps Tips
Way of the Future
Task runners + theming automating your workflow
Best Practices for creating WP REST API by Galkin Nikita
Web Performance & You - HighEdWeb Arkansas Version
How I Learned to Stop Worrying and Backup WordPress
WP-CLI: WordCamp Nashville 2016
Embrace Native Async Nature of JavaScript in WebDriver JS - SeleniumConf Aust...
Modern Front End Tools & Workflow
Play Framework on Google App Engine - Productivity Stack
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...
Ad

Similar to Yeoman (20)

PDF
MuleSoft Surat Meetup#54 - MuleSoft Automation
PDF
Your API Sucks! Why developers hang up and how to stop that.
PPTX
Blue Prism Training Demo
PDF
Session 1 - Intro to Robotic Process Automation.pdf
PDF
Overboard.js - where are we going with with jsconfasia / devfestasia
PPTX
聊聊測試左移
PPTX
Robot - Overcoming the IBM i Knowledge Gap
PPTX
Princeton-NJ-Meetup-RPA.pptx
PDF
Technical SEO for WordPress - 2017 edition
PPTX
[Pinto] Is my SharePoint Development team properly enlighted?
PDF
Stapling and patching the web of now - ForwardJS3, San Francisco
PPTX
Intro to Web Development with Microsoft Technologies
PDF
UIPATH Careers PPT.pdf
PPTX
Wordcamp 2017-toronto-sam lalonde
PDF
Seven Tips for Collaborative Success
PDF
Breaking down barriers empowering developers with service management insights
PDF
Breaking down barriers empowering developers with service management insights
PPTX
London web performance WPO Lessons from the field June 2013
PPTX
Inside Out: A Web Performance Philosophy
PPTX
AEM User Group: India Chapter Kickoff Meeting
MuleSoft Surat Meetup#54 - MuleSoft Automation
Your API Sucks! Why developers hang up and how to stop that.
Blue Prism Training Demo
Session 1 - Intro to Robotic Process Automation.pdf
Overboard.js - where are we going with with jsconfasia / devfestasia
聊聊測試左移
Robot - Overcoming the IBM i Knowledge Gap
Princeton-NJ-Meetup-RPA.pptx
Technical SEO for WordPress - 2017 edition
[Pinto] Is my SharePoint Development team properly enlighted?
Stapling and patching the web of now - ForwardJS3, San Francisco
Intro to Web Development with Microsoft Technologies
UIPATH Careers PPT.pdf
Wordcamp 2017-toronto-sam lalonde
Seven Tips for Collaborative Success
Breaking down barriers empowering developers with service management insights
Breaking down barriers empowering developers with service management insights
London web performance WPO Lessons from the field June 2013
Inside Out: A Web Performance Philosophy
AEM User Group: India Chapter Kickoff Meeting
Ad

More from Mohammed Arif (6)

PPTX
Grunt - The JavaScript Task Runner
PPT
Thalassemia
PPTX
MVC & backbone.js
PPT
HTML5 ★ Boilerplate
PPT
PPT
JavaScript & Dom Manipulation
Grunt - The JavaScript Task Runner
Thalassemia
MVC & backbone.js
HTML5 ★ Boilerplate
JavaScript & Dom Manipulation

Recently uploaded (20)

PPTX
Module 1 Introduction to Web Programming .pptx
PDF
Comparative analysis of machine learning models for fake news detection in so...
PDF
NewMind AI Weekly Chronicles – August ’25 Week IV
PDF
Enhancing plagiarism detection using data pre-processing and machine learning...
PPTX
agenticai-neweraofintelligence-250529192801-1b5e6870.pptx
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
DOCX
Basics of Cloud Computing - Cloud Ecosystem
PDF
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
PDF
Lung cancer patients survival prediction using outlier detection and optimize...
PDF
giants, standing on the shoulders of - by Daniel Stenberg
PDF
Auditboard EB SOX Playbook 2023 edition.
PDF
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
PPTX
Microsoft User Copilot Training Slide Deck
PDF
Electrocardiogram sequences data analytics and classification using unsupervi...
PDF
Introduction to MCP and A2A Protocols: Enabling Agent Communication
PDF
LMS bot: enhanced learning management systems for improved student learning e...
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PDF
Early detection and classification of bone marrow changes in lumbar vertebrae...
Module 1 Introduction to Web Programming .pptx
Comparative analysis of machine learning models for fake news detection in so...
NewMind AI Weekly Chronicles – August ’25 Week IV
Enhancing plagiarism detection using data pre-processing and machine learning...
agenticai-neweraofintelligence-250529192801-1b5e6870.pptx
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Basics of Cloud Computing - Cloud Ecosystem
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
Co-training pseudo-labeling for text classification with support vector machi...
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
Lung cancer patients survival prediction using outlier detection and optimize...
giants, standing on the shoulders of - by Daniel Stenberg
Auditboard EB SOX Playbook 2023 edition.
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
Microsoft User Copilot Training Slide Deck
Electrocardiogram sequences data analytics and classification using unsupervi...
Introduction to MCP and A2A Protocols: Enabling Agent Communication
LMS bot: enhanced learning management systems for improved student learning e...
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Early detection and classification of bone marrow changes in lumbar vertebrae...

Yeoman

  • 2. Mohammed Arif A husband, father and a Front End Specialist at Sapient-Nitro. https://github.com/mdarif https://twitter.com/#!/arif_iq http://in.linkedin.com/in/mohdarif www.mohammedarif.com 2
  • 3. AGENDA  What is automation?  Why automation?  Old way of doing things  New way?  Yeoman  Grunt  Grunt Tips  Bower  Showtime  Q&A 3
  • 4. WHAT IS AUTOMATION? The technique of making a process, or a system operate automatically. 4
  • 5. WHY AUTOMATION? To stay productive! 5
  • 6. OLD WAY OF DOING THINGS? • • • • Scaffolding Download libraries Download templates Download frameworks • • • • • Watch Sass / Less / Stylus Watch CoffeeScript Watch Jade / Haml LiveReload JS / CSS Linting… 6
  • 9. 9
  • 10. YEOMAN - Scaffold, write less with Yo “Yeoman is a robust and opinionated client-side stack, comprising tools and frameworks that can help developers quickly build beautiful web applications” http://yeoman.io/whyyeoman.html 10
  • 11. YEOMAN - Scaffold, write less with Yo • scaffolding, write less with Yo • dependency management with Bower • Wiring and integration of a number of commonly used grunt tasks • build, preview and test with Grunt • maintained separately • play well together, all part of the Yeoman workflow 11
  • 12. YEOMAN - Scaffold, write less with Yo $ npm install -g yo 12
  • 13. YEOMAN - Scaffold, write less with Yo $ yo webapp • • • • • • • • HTML5 Boilerplate Twitter Bootstrap Project Structure Mocha Tests RequireJS (optional) Modernizr (optional) Build process ... 13
  • 14. 14
  • 15. GRUNT - Build, preview and test with Grunt Grunt is a task-based command line build tool for JavaScript projects. http://www.slideshare.net/arif_iq/grunt-22465541 15
  • 17. GRUNT TIPS grunt-uncss Remove unused CSS across your project at build time. https://github.com/addyosmani/grunt-uncss 17
  • 18. GRUNT TIPS Build directly from DevTools grunt-devtools extension https://github.com/vladikoff/grunt-devtools 18
  • 20. BOWER - Manage dependencies with Bower A package manager for the web. 20
  • 21. BOWER - Manage dependencies with Bower Runs over: • Git • HTTP(s) • Zip • npm 21
  • 22. BOWER - Manage dependencies with Bower $ bower list $ bower search $ bower search jquery $ bower install $ bower install jquery –save-dev 22
  • 23. BOWER - Manage dependencies with Bower • maintained by Twitter and the open-source community • configuration in bower.json https://egghead.io/lessons/bower-introduction-and-setup 23
  • 25. Q&A