Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Getting Started with Grunt: The JavaScript Task Runner

You're reading from   Getting Started with Grunt: The JavaScript Task Runner If you know JavaScript you ought to know Grunt – the Task Runner for managing sophisticated web applications. From a basic understanding to constructing your own advanced Grunt tasks, this tutorial has it all covered.

Arrow left icon
Product type Paperback
Published in Feb 2014
Publisher
ISBN-13 9781783980628
Length 132 pages
Edition Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Jaime Pillora Jaime Pillora
Author Profile Icon Jaime Pillora
Jaime Pillora
Bocoup LLC Bocoup LLC
Author Profile Icon Bocoup LLC
Bocoup LLC
Arrow right icon
View More author details
Toc

Index

A

  • Abstract Syntax Tree (AST) / Configuring tasks
  • Application Programming Interface (API) / Gruntfile.js
  • args function / The task object
  • async function / The task object, Asynchronous tasks
  • asynchronous tasks
    • about / Asynchronous tasks
  • author property / Grunt plugins

B

  • Behavior Driven Design (BDD) syntax
    • about / Testing with Grunt
    • describe function / Testing with Grunt
    • it function / Testing with Grunt
  • build, creating
    • directory setup, initial / Step 1 – initial directory setup
    • configuration, initial / Step 2 – initial configuration
    • source files, organizing / Step 3 – organizing our source files, Scripts, Views
    • build files, optimizing / Step 4 – optimizing our build files, Scripts
    • tasks / Step 5 – tasks and options
    • development flow, improving / Step 6 – improving development flow
    • application, deploying / Step 7 – deploying our application
  • build files
    • optimizing / Step 4 – optimizing our build files
  • build files, optimizing
    • scripts / Scripts
    • styles / Styles
    • views / Views
  • build tool / What is Grunt?

C

  • Chrome DevTools / Chrome DevTools
  • Code Academy / JavaScript resources
  • CoffeeScript
    • about / CoffeeScript
    • Jade / Jade
    • Stylus / Stylus
    • Haml / Haml, Sass, and LESS
    • Sass / Haml, Sass, and LESS
    • LESS / Haml, Sass, and LESS
  • command-line
    • about / Command-line
    • task arguments / Task arguments
    • runtime options / Runtime options
    • task, help / Task help
  • Command line interface (CLI) / Grunt
  • CommonJS
    • about / Modules
    • sample code / Modules
  • concatenation
    • about / Concatenation
  • consoleCheck task / Configuring tasks
  • continuous integration (CI)
    • about / Continuous integration with Grunt
  • curly
    • about / Static analysis or Linting
  • cwd / Mapping a source directory to destination directory

D

  • data / The multitask object
  • describe function / Testing with Grunt
  • dest / Mapping a source directory to destination directory
  • dest property / Single set of source files
  • devDependencies property / Grunt plugins
  • development tools
    • about / Development tools
    • Author Picks / Author picks
    • Sublime Text / Sublime Text, SourceTree
    • Chrome DevTools / Chrome DevTools
    • community picks / Community picks
    • Yeoman / Yeoman
  • directory setup / Step 1 – initial directory setup
  • directory structure / Directory structure
  • Distributed Version Control System (DVCS) / Community
  • Don't Repeat Yourself (DRY) / Why use Grunt?

E

  • echo command / Step 1 – initial directory setup
  • Eloquent JavaScript / JavaScript resources
  • errorCount function / The task object
  • expand / Mapping a source directory to destination directory
  • expect function / Testing with Grunt
  • exports / Modules
  • ext / Mapping a source directory to destination directory
  • external tasks
    • about / External tasks

F

  • files / The multitask object
  • files, configuring
    • about / Configuring files
    • source files, single set / Single set of source files
    • source files, multiple set / Multiple sets of source files
    • source directory, mapping to destination directory / Multiple sets of source files, Mapping a source directory to destination directory
  • filesSrc / The multitask object
  • File Transfer Protocol (FTP)
    • about / FTP
  • flags function / The task object
  • flatten / Mapping a source directory to destination directory
  • foo task / Flexibility, Task arguments
  • fs.appendFileSync method / Tasks

G

  • Git / Community
  • GitHub / Community
  • GitHub Gist / Grunt
  • globbing / Configuring files
  • Grunt
    • about / What is Grunt?
    • file.js file, example / What is Grunt?
    • uglify plugin / What is Grunt?
    • features / Why use Grunt?
    • benefits / Benefits of Grunt, Effectiveness, Flexibility
    • use cases / Real-world use cases, Static analysis or Linting, CoffeeScript
    • deployment / Deployment
    • installation / Installation
    • Command line interface (CLI) / Grunt
    • project, setting up / Project setup
    • testing with / Testing with Grunt
    • continuous integration (CI) / Continuous integration with Grunt
    • plugins / Grunt plugins, Useful plugins
  • Grunt, deployment
    • about / Deployment
    • File Transfer Protocol (FTP) / FTP
    • Secure File Transfer Protocol (SFTP) / SFTP
    • Simple Storage Service (S3) / S3
  • grunt --help command / Task help
  • grunt-cli module / Grunt
  • grunt-concurrent plugin / Useful plugins
  • grunt-contrib- / Official versus user tasks
  • grunt-contrib-uglify plugin / Gruntfile.js
  • grunt-contrib-watch plugin / Step 6 – improving development flow
  • grunt-mocha / Testing with Grunt
  • grunt.config.get function / Configuring tasks, Templates
  • grunt.config function / Configuring tasks
  • grunt.current.task object / The task object
  • grunt.current.task property / The multitask object
  • grunt.fail.fatal function / Configuring tasks
  • grunt.fail.warn function / Configuring tasks
  • grunt.initConfig function / Configuring tasks
  • grunt.loadNpmTasks function / Grunt plugins
  • grunt.option function / Runtime options
  • grunt.registerTask / Tasks
  • grunt.template.process function / Templates
  • Gruntfile.js file / Gruntfile.js, External tasks
  • grunt object / Gruntfile.js
  • gzip compression / Step 7 – deploying our application

H

  • Haml
    • about / Haml, Sass, and LESS
  • homepage property / Grunt plugins

I

  • Immediately-Invoked Function Expression (IIFE) / Scripts
  • info grunt-gswg command / Grunt plugins
  • initConfig / What is Grunt?
  • Input/Output (I/O) task / Node.js
  • installation, Grunt
    • about / Installation
    • Node.js / Node.js
    • modules / Modules
    • npm / npm
  • it function / Testing with Grunt

J

  • Jade
    • about / Jade
  • Jasmine / Testing with Grunt
  • JavaScript
    • resources / JavaScript resources
    / JavaScript resources
  • JavaScript Object Notation (JSON) / package.json
  • JSHint / Static analysis or Linting
  • jshint task / Static analysis or Linting
  • JSLint / Static analysis or Linting

K

  • knox npm module / Task features

L

  • LESS
    • about / Haml, Sass, and LESS
  • license property / Grunt plugins
  • Linting
    • about / Static analysis or Linting
  • LiveReload / Step 6 – improving development flow
  • LiveReload Chrome extension / Step 6 – improving development flow
  • load-grunt-tasks plugin / Useful plugins
  • loadNpmTasks / What is Grunt?
  • loadNpmTasks function / Grunt plugins
  • loadTasks / Grunt plugins

M

  • Mac OSX / Mac OS X
  • Make build tool / What is Grunt?
  • minification
    • about / Minification
  • Mocha / Testing with Grunt
  • module / Modules
  • module.exports object / Gruntfile.js
  • modules
    • about / Modules, npm
    • finding / Finding modules
    • installing / Installing modules
  • Mozilla Developer Network / JavaScript resources
  • multitasks
    • configuring / Configuring multitasks
    • about / Multitasks, The multitask object
  • multitasks, objects
    • target / The multitask object
    • files / The multitask object
    • fileSrc / The multitask object
    • data / The multitask object

N

  • nameArgs function / The task object
  • name function / The task object
  • Node.js / What is Grunt?
    • about / Node.js
    • installing / Node.js
  • node_modules directory / Grunt plugins
  • npm
    • about / npm
    • Frequently Asked Questions (FAQ) page / npm
    • modules, finding / Finding modules
    • modules, installing / Installing modules

O

  • optimize option / Runtime options
  • options
    • configuring / Configuring options
  • options function / The task object, The multitask object
  • options object / Configuring options

P

  • package / npm
  • package.json file
    • about / package.json
    / package.json
  • Package.json Validator tool / package.json
  • peerDependencies property / Grunt plugins
  • PhantomJS / Testing with Grunt
  • plugins
    • about / Grunt plugins
    • grunt-concurrent plugin / Useful plugins
    • load-grunt-tasks plugin / Useful plugins

Q

  • Quality assurance (QA) team / Step 7 – deploying our application

R

  • rename / Mapping a source directory to destination directory
  • require function / Modules, npm
  • requiresConfig function / The task object
  • requires function / The task object

S

  • --save-dev option / package.json
  • --save option / package.json
  • Sass
    • about / Haml, Sass, and LESS
  • Secure File Transfer Protocol (SFTP)
    • about / SFTP
  • Semantic Versioning Specification (SemVer) / package.json
  • Simple Storage Service (S3)
    • about / S3
    / Step 7 – deploying our application
  • source files
    • organizing / Step 3 – organizing our source files
    • scripts / Scripts
    • views / Views
    • styles / Styles
  • SourceTree / SourceTree
  • src / Mapping a source directory to destination directory
  • src property / Configuring files
  • standard out (stdout) / Step 1 – initial directory setup
  • static analysis
    • about / Static analysis or Linting
  • string property / Configuring multitasks
  • Stylus
    • about / Stylus
  • Sublime Text / Sublime Text

T

  • target / The multitask object
  • task object, properties
    • name function / The task object
    • async function / The task object
    • requires function / The task object
    • requiresConfig function / The task object
    • nameArgs function / The task object
    • args function / The task object
    • flags function / The task object
    • errorCount function / The task object
    • options function / The task object
  • task runner / What is Grunt?
  • tasks
    • configuring / Configuring tasks
    • multitasks, configuring / Configuring multitasks
    • options, configuring / Configuring options
    • files, configuring / Configuring files
    • templates / Templates
    • about / Tasks
    • object / The task object
    • aliasing / Task aliasing
    • running / Running tasks
  • tasks, running
    • command line / Command-line
    • programmatically / Programmatically
    • automatically / Automatically
  • templates
    • about / Templates
  • third-party tasks
    • about / Using third-party tasks
    • searching for / Searching for tasks
    • official versus user tasks / Official versus user tasks
    • popularity / Task popularity
    • features / Task features
    • stars / Task stars
  • this.files array / Multitasks
  • this operator / The task object
  • transcompilation
    • about / Transcompilation

U

  • uglify plugin / What is Grunt?
  • use cases
    • about / Real-world use cases
    • static analysis / Static analysis or Linting
    • transcompilation / Transcompilation
    • CoffeeScript / CoffeeScript

V

  • Version Control System (VCS) / Directory structure

W

  • watch task / Automatically
  • WebStorm / WebStorm

X

  • XMLHTTPRequest (XHR) / Views

Y

  • Yeoman / Yeoman
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime