Skip to content

Instantly share code, notes, and snippets.

@bob-moore
Last active September 14, 2016 14:03
Show Gist options
  • Save bob-moore/cc35955cbfd781798584b5783dd6a682 to your computer and use it in GitHub Desktop.
Save bob-moore/cc35955cbfd781798584b5783dd6a682 to your computer and use it in GitHub Desktop.
Grunt Configuration for Bones With LESS
Theme Number Name
1 Pilot
2 The Man in the S.U.V.
3 A Boy in a Tree
4 The Man in the Bear
5 A Boy in a Bush
6 The Man in the Wall
7 A Man on Death Row
8 The Girl in the Fridge
9 The Man in the Fallout Shelter
10 The Woman at the Airport
11 The Woman in the Car
12 The Superhero in the Alley
13 The Woman in the Garden
module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-autoprefixer');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-openport');
grunt.loadNpmTasks('grunt-newer');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.initConfig({
// Reference package.json
pkg: grunt.file.readJSON('package.json'),
// Compile LESS
less: {
options: {
compress: true,
sourceMap: true,
ieCompat: true,
},
style: {
files: { 'library/css/style.css': 'library/less/style.less' }
},
login: {
files: { 'library/css/login.css': 'library/less/login.less' }
},
ie: {
files: { 'library/css/ie.css': 'library/less/ie.less' }
}
},
// Run Autoprefixer on compiled css
autoprefixer: {
options: {
browsers: ['last 3 version', '> 1%', 'ie 8', 'ie 9', 'ie 10'],
map: true
},
style : {
src : 'library/css/style.css',
dest : 'library/css/style.css'
},
login : {
src : 'library/css/login.css',
dest : 'library/css/login.css'
},
ie : {
src : 'library/css/ie.css',
dest : 'library/css/ie.css'
}
},
// JSHint - Check Javascript for errors
jshint : {
options : {
globals : {
jQuery : true,
},
smarttabs : true,
},
all : [ 'Gruntfile.js', 'libarary/js/**/*.js', '!libarary/js/min/*.js', '!libarary/js/libs/*.js' ],
},
// Minify JS
uglify: {
options: {
sourceMap : true
},
theme : {
files : {
'library/js/dist/scripts.min.js' : [ 'library/js/jquery.meanmenu.js', 'library/js/scripts.js' ]
}
}
},
// Watch
watch: {
options: {
livereload: true,
},
lessPostProcess: {
files: 'library/less/**/*.less',
tasks: ['less', 'newer:autoprefixer'],
},
jsPostProcess: {
files: [ 'library/js/**/*.js', '!library/js/dist/**/*.js' ],
tasks: ['newer:jshint', 'uglify'],
},
livereload: {
files: ['library/css/*.css', 'library/js/*.js', '*.html', 'library/images/*', '*.php'],
}
}
});
// Register the default task
grunt.registerTask('default', ['openport:watch.options.livereload:35729', 'watch']);
};
{
"name" : "THEME NAME",
"description" : "Bones Theme Number X",
"license" : "GPL-2.0",
"version" : "1.0.0",
"repository" : {
"type" : "git",
"url" : "https://github.com/bobjutsu/Grunt-Library"
},
"devDependencies" : {
"grunt" : "latest",
"grunt-autoprefixer" : "latest",
"grunt-contrib-less" : "latest",
"grunt-contrib-jshint" : "latest",
"grunt-contrib-uglify" : "latest",
"grunt-contrib-watch" : "latest",
"grunt-contrib-clean" : "latest",
"grunt-openport" : "latest",
"grunt-newer" : "latest"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment