Installation
In this section, we cover how to install and use Grunt's key components, Node.js and npm. We will review a brief introduction into each, as well as their core concepts. Subsequently, we will cover the simple installation of Grunt itself.
Node.js
Although this book primarily focuses on Grunt, we will also dip our toes into the world of Node.js (http://gswg.io#node) fairly regularly. Given Grunt is written as a Node.js module and Grunt tasks and plugins are also Node.js modules, it is important that we understand the basics of Node.js and its package manager, npm (http://gswg.io#npm).
Ryan Dahl started the Node.js project in early 2009 out of frustration with the current state of web servers in the industry. At the time, web servers written in Ruby (Mongrel and then Thin) were popular due to the Ruby on Rails framework. Ryan realized that writing a really fast web server in Ruby just wasn't possible. Ruby's inefficiency was actually caused by the language's blocking nature, which...