-
Notifications
You must be signed in to change notification settings - Fork 0
/
Gruntfile.js
107 lines (94 loc) · 2.11 KB
/
Gruntfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
module.exports = function( grunt ){
grunt.loadTasks('./tasks');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-named-modules');
grunt.loadNpmTasks('grunt-express-server');
var config = {
pkg: grunt.file.readJSON('package.json')
, express: {
options: {}
, dev: {
options: {
script: 'app.js'
}
}
}
, less: {
dev: {
options: {
// paths: ["public"]
}
, files: {
"public/css/main.gen.css": "less/main.less"
}
}
}
, watch: {
scripts: {
// Concat jshint.all
files: [],
tasks: ['jshint'],
options: {
spawn: false,
}
},
less: {
files: [
'routes/**/*.less'
, 'less/*.less'
],
tasks: ['less'],
options: {
spawn: false,
}
},
namedModules: {
files: ['package.json'],
tasks: ['namedModules'],
options: {
spawn: false,
}
},
express: {
files: [
'*.js'
, 'lib/*.js', 'lib/**/*.js'
, 'routes/*.js', 'routes/**/*.html', 'routes/**/*.js'
]
, tasks: ['express:dev']
, options: { spawn: false }
}
}
, jshint: {
// define the files to lint
all: ['*.js', 'lib/*.js', 'lib/**/*.js', 'routes/*.js', 'public/**/*.js', 'bin/*.js', 'workers/*.js'],
options: {
ignores: ['node_modules', 'public/jam/**', 'public/bower_components/**', 'public/js/*.js'],
laxcomma: true,
sub: true,
globals: {
jQuery: true,
console: true,
module: true
}
}
}
};
config.watch.scripts.files = config.watch.scripts.files.concat(
config.jshint.all
);
grunt.initConfig( config );
grunt.registerTask( 'default', [
'jshint'
, 'namedModules'
, 'less'
, 'express:dev'
, 'watch'
]);
grunt.registerTask( 'lint', [
'jshint'
, 'watch:scripts'
]);
};