Skip to content

Instantly share code, notes, and snippets.

@masseuro
Last active December 31, 2015 03:29
Show Gist options
  • Save masseuro/7927737 to your computer and use it in GitHub Desktop.
Save masseuro/7927737 to your computer and use it in GitHub Desktop.
grunfile.js frontdev
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
dist: {
src: [
'js/lib/*.js',
'js/behaviours.js'
],
dest: 'build/js/production.js',
}
},
uglify: {
build: {
src: 'build/js/production.js',
dest: 'build/js/production.min.js'
}
},
imagemin: {
dynamic: {
files: [{
expand: true,
cwd: 'img/',
src: ['**/*.{png,jpg,gif}'],
dest: 'img/'
}]
}
},
compass: {
compile: {
options: {
config: 'config.rb'
}
},
clean: {
options: {
config: 'config.rb',
clean: true
},
},
compileprod: {
options: {
config: 'configprod.rb'
}
},
},
jshint: {
all: [
'js/lib/*.js',
'js/behaviours.js'
]
},
watch: {
scripts: {
files: ['js/**/*.js'],
tasks: ['jshint','concat', 'uglify'],
options: {
livereload: true,
},
},
css: {
files: ['scss/**/*.scss'],
tasks: ['compass:compile'],
options: {
livereload: true,
}
}
},
});
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.loadNpmTasks('grunt-contrib-jshint');
var target = grunt.option('target') || 'dev';
grunt.registerTask('default', ['jshint','concat','uglify','imagemin','compass:compile']);
grunt.registerTask('prod', ['jshint','concat','uglify','imagemin','compass:clean','compass:compileprod']);
grunt.registerTask('clean', ['compass:clean']);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment