text: module.exports = function (grunt) {
  
    grunt.initConfig({
  
      // Import package manifest
      pkg: grunt.file.readJSON("package.json"),
  
      // Banner definitions
      meta: {
        banner: "/*\n" +
        " *  <%= pkg.title || pkg.name %> - v<%= pkg.version %>\n" +
        " *  <%= pkg.description %>\n" +
        " *  <%= pkg.homepage %>\n" +
        " *  Made by <%= pkg.author.name %>\n" +
        " *  Under <%= pkg.license %> License\n" +
        " */\n"
      },
  
      // Concat definitions
      concat: {
        options: {
          banner: "<%= meta.banner %>"
        },
        dist: {
          src: ["src/jquery.activelink.js"],
          dest: "dist/jquery.activelink.js"
        }
      },
  
      // Lint definitions
      jshint: {
        files: ["src/jquery.activelink.js", "test/**/*"],
        options: {
          jshintrc: ".jshintrc"
        }
      },
  
      jscs: {
        src: "src/**/*.js",
        options: {
          config: ".jscsrc"
        }
      },
  
      // Minify definitions
      uglify: {
        dist: {
          src: ["dist/jquery.activelink.js"],
          dest: "dist/jquery.activelink.min.js"
        },
        options: {
          banner: "<%= meta.banner %>"
        }
      },
  
      // watch for changes to source
      // Better than calling grunt a million times
      // (call 'grunt watch')
      watch: {
        files: ["src/*"],
        tasks: ["default"]
      }
  
    });
  
    grunt.loadNpmTasks("grunt-contrib-concat");
    grunt.loadNpmTasks("grunt-contrib-jshint");
    grunt.loadNpmTasks("grunt-jscs");
    grunt.loadNpmTasks("grunt-contrib-uglify");
    grunt.loadNpmTasks("grunt-contrib-watch");
  
    grunt.registerTask("lint", ["jshint", "jscs"]);
    grunt.registerTask("build", ["concat", "uglify"]);
    grunt.registerTask("default", ["jshint", "build"]);
  };
  