Compile LESS Files with Grunt

Grunt is a Node task runner that can be configured to detect file changes and
subsequently perform user-defined operations. By leveraging these features,
we can have Grunt compile LESS files into CSS automatically.

Step 1: Install Node.js

Download a Node installer and run it.
Installation packages are available for Mac, Windows, Linux, and SunOS.
Alternatively, you can compile and install it from source.

Step 2: Install Grunt

Globally install Grunt using the Node package manager:

$ npm install -g grunt-cli

Step 3: Create a Gruntfile.js

Now create a file called Gruntfile.js in your project directory.

Then copy and paste in the example configuration shown just below this
paragraph. You’ll just need to change the (commented) lines that define
which files Grunt should keep an eye on, as well as the source and destination
paths to the LESS and CSS files.

Example:

module.exports=function(grunt){require('jit-grunt')(grunt);grunt.initConfig({less:{development:{options:{compress:true,yuicompress:true,optimization:2},files:{"css/main.css":"less/main.less"// destination file and source file}}},watch:{styles:{files:['less/**/*.less'],// which files to watchtasks:['less'],options:{nospawn:true}}}});grunt.registerTask('default',['less','watch']);};

Note that providing /**/* in the watch path will watch files recursively
under that directory.

Step 4: Configure the package file

If you do not have an existing package.json file in your project directory,
create one: