module.exports = function (grunt) {

	// configure the tasks
	grunt.initConfig({
		pkg: grunt.file.readJSON('package.json'),

		// Copy files from src to build
		copy: {
			build: {
				cwd: 'src',
				src: ['**'],
				dest: 'build',
				expand: true
			},
		},

		// Clean the build dir
		clean: {
			build: {
				src: ['build']
			},
			stylesheets: {
				src: ['build/**/*.css', '!build/bundle.css']
			},
			scripts: {
				src: ['build/**/*.js', '!build/bundle.js']
			},
		},

		// Compile the Styl(us)
		stylus: {
			build: {
				options: {
					linenos: true,
					compress: false
				},
				files: [{
					expand: true,
					cwd: 'build',
					src: ['**/*.styl'],
					dest: 'build',
					ext: '.css'
    			}]
			}
		},

		// Auto add vendor prefixes
		autoprefixer: {
			build: {
				expand: true,
				cwd: 'build',
				src: ['**/*.css'],
				dest: 'build'
			}
		},

		// Minify and combine all the CSS files
		cssmin: {
			build: {
				files: {
					'build/bundle.css': ['build/**/*.css']
				}
			}
		},

		// Uglify the JS
		uglify: {
			build: {
				options: {
					mangle: false
				},
				files: {
					'build/bundle.js': ['build/**/*.js']
				}
			}
		},

		// Watch for changes
		watch: {
			stylesheets: {
				files: 'src/**/*.styl',
				tasks: ['stylesheets']
			},
			scripts: {
				files: 'src/**/*.js',
				tasks: ['scripts']
			},
			copy: {
				files: ['src/**', '!src/**/*.styl', '!src/**/*.js'],
				tasks: ['copy']
			}
		},
	});

	// load the tasks
	require('load-grunt-tasks')(grunt);

	// define the tasks
	grunt.registerTask('stylesheets', 'Compiles the stylesheets.', ['stylus', 'autoprefixer', 'cssmin', 'clean:stylesheets']);

	grunt.registerTask('scripts', 'Compiles the JavaScript files.', ['uglify', 'clean:scripts']);

	grunt.registerTask('build', 'Compiles all of the assets and copies the files to the build directory.', ['clean:build', 'copy', 'stylesheets']);

	grunt.registerTask('default', 'Watches the project for changes, automatically builds them and runs a server.', ['build', 'connect', 'watch']);
};
@@ -374,16 +374,35 @@
 /*.css',
+ 'build/**/*.styl',
  '!build
@@ -1465,16 +1465,744 @@
 %09%09%7D%0A%09%09%7D,
+%0A%0A%09%09// Lint the JS files%0A%09%09jshint: %7B%0A%09%09%09options: %7B%0A%09%09%09%09lastsemic: true, // Allows function()%7B return 'Something' %7D %3C-- Notice no ';' after return for single-line function%0A%09%09%09%09laxcomma: true, // Allows comma-first coding%0A%09%09%09%09proto: true, // Allows __proto__%0A%09%09%09%7D,%0A%09%09%09node: %7B%0A%09%09%09%09files: %7B%0A%09%09%09%09%09src: %5B'src/**/*.js', 'Gruntfile.js', '!src/public/**', '!src/vendor/**', '!**.test.js', '!test.**'%5D%0A%09%09%09%09%7D,%0A%09%09%09%09options: %7B%0A%09%09%09%09%09node: true // Some Node.js specific stuff%0A%09%09%09%09%7D%0A%09%09%09%7D,%0A%09%09%09client: %7B%0A%09%09%09%09files: %7B%0A%09%09%09%09%09src: %5B%22src/public/js/**/*.js%22%5D%0A%09%09%09%09%7D,%0A%09%09%09%09options: %7B%0A%09%09%09%09%09browser: true, // navigator and stuff, plus HTML5 APIs%0A%09%09%09%09%09devel: true, // console.log and stuff%0A%09%09%09%09%09jquery: true // Obvious, jQuery stuff such as $%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D,
 %0A%09%7D);%0A%0A%09
@@ -2632,32 +2632,43 @@
 ', 'stylesheets'
+, 'scripts'
 %5D);%0A%0A%09grunt.regi
@@ -2781,19 +2781,8 @@
 ld',
- 'connect',
  'wa

Add linting to new gruntfile [Not Working]