Skip to content

Instantly share code, notes, and snippets.

@Haraldson
Last active August 29, 2015 14:04
Show Gist options
  • Save Haraldson/05ec2c720d34b1e9934f to your computer and use it in GitHub Desktop.
Save Haraldson/05ec2c720d34b1e9934f to your computer and use it in GitHub Desktop.
Grunt CSS processing
module.exports = function(grunt)
{
grunt.initConfig(
{
pkg: grunt.file.readJSON('package.json'),
watch: {
css: {
files: ['www/src/sass/**/*.scss'],
tasks: ['css']
}
},
sass: {
dist: {
files: { 'www/dist/css/styles.css': 'www/src/sass/styles.scss' }
}
},
autoprefixer: {
dist: {
files: { 'www/dist/css/styles.css': 'www/dist/css/styles.css' }
}
},
cmq: {
dist: {
files: { 'www/dist/css': ['www/dist/css/styles.css'] }
}
},
imagemin: {
png: {
options: { optimizationLevel: 7 },
files: [
{
expand: true,
src: 'www/src/assets/gfx/**/*.png'
}]
},
jpg: {
options: { progressive: true },
files: [
{
expand: true,
src: 'www/src/assets/gfx/**/*.{jpg,jpeg}'
}]
},
gif: {
options: { interlaced: false },
files: [
{
expand: true,
src: 'www/src/assets/gfx/**/*.gif'
}]
}
},
imageEmbed: {
dist: {
src: ['www/dist/css/styles.css'],
dest: 'www/dist/css/styles.css',
options: {
baseDir: 'www',
deleteAfterEncoding: false
}
}
},
cssmin: {
options: { report: 'gzip' },
dist: {
files: { 'www/dist/css/styles.css': ['www/dist/css/styles.css'] }
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-sass');
grunt.loadNpmTasks('grunt-autoprefixer');
grunt.loadNpmTasks('grunt-combine-media-queries');
grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.loadNpmTasks('grunt-image-embed');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.registerTask('default', ['watch']);
grunt.registerTask('css', ['sass', 'autoprefixer', 'cmq', 'imagemin', 'imageEmbed', 'cssmin']);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment