annotate Gruntfile.js @ 311:1c25cb99859f

Put all the special pages text in a JSON file.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 05 Oct 2014 07:37:44 -0700
parents 825d05a9ee67
children d19fbf3025e0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1 module.exports = function(grunt) {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 // Project configuration.
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 grunt.initConfig({
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5 pkg: grunt.file.readJSON('package.json'),
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 less: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7 development: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8 options: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
9 paths: ["wikked/assets"]
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11 files: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
12 "wikked/static/css/wikked.min.css": "wikked/assets/css/wikked.less"
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
15 production: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
16 options: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
17 paths: ["wikked/assets"],
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 compress: true
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
19 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20 files: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
21 "wikked/static/css/wikked.min.css": "wikked/assets/css/wikked.less"
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
24 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25 requirejs: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
26 development: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
27 options: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
28 optimize: "none",
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
29 baseUrl: "wikked/assets",
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
30 mainConfigFile: "wikked/assets/js/wikked.js",
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
31 name: "js/wikked",
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
32 out: "wikked/static/js/wikked.min.js"
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
33 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
34 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
35 production: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
36 options: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
37 optimize: "uglify",
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
38 baseUrl: "wikked/assets",
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
39 mainConfigFile: "wikked/assets/js/wikked.js",
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40 name: "js/wikked",
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
41 out: "wikked/static/js/wikked.min.js"
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
42 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
45 imagemin: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46 all: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
47 files: [{
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
48 expand: true,
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
49 cwd: 'wikked/assets/',
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
50 dest: 'wikked/static/',
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
51 src: ['img/*.{png,jpg,gif}']
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
52 }]
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
53 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
54 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
55 copy: {
103
cc1f3b81364c Better development mode:
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
56 development: {
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57 files: [
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
58 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['img/**']},
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
59 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['js/**']},
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
60 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['tpl/**']},
311
1c25cb99859f Put all the special pages text in a JSON file.
Ludovic Chabant <ludovic@chabant.com>
parents: 179
diff changeset
61 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['json/**']},
170
a24b8af2d4c3 Deploy Bootstrap fonts.
Ludovic Chabant <ludovic@chabant.com>
parents: 162
diff changeset
62 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['bootstrap/js/*.js']},
a24b8af2d4c3 Deploy Bootstrap fonts.
Ludovic Chabant <ludovic@chabant.com>
parents: 162
diff changeset
63 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['bootstrap/fonts/**']}
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
64 ]
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
65 },
125
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
66 dev_scripts: {
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
67 files: [
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
68 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['js/wikked.js', 'js/wikked/**']}
125
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
69 ]
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
70 },
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
71 dev_templates: {
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
72 files: [
311
1c25cb99859f Put all the special pages text in a JSON file.
Ludovic Chabant <ludovic@chabant.com>
parents: 179
diff changeset
73 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['tpl/**']},
1c25cb99859f Put all the special pages text in a JSON file.
Ludovic Chabant <ludovic@chabant.com>
parents: 179
diff changeset
74 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['json/**']}
125
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
75 ]
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
76 },
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
77 production: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
78 files: [
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
79 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['js/require.js']},
170
a24b8af2d4c3 Deploy Bootstrap fonts.
Ludovic Chabant <ludovic@chabant.com>
parents: 162
diff changeset
80 {expand: true, cwd: 'wikked/assets/', dest: 'wikked/static/', src: ['bootstrap/fonts/**']}
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
81 ]
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
82 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
83 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
84 jshint: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
85 all: ['wikked/assets/js/wikked.js', 'wikked/assets/js/wikked/**/*.js'],
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
86 gruntfile: ['Gruntfile.js']
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
87 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
88 watch: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
89 scripts: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
90 files: ['wikked/assets/js/wikked.js', 'wikked/assets/js/wikked/**'],
125
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
91 tasks: ['jshint:all', 'copy:dev_scripts']
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
92 },
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
93 templates: {
311
1c25cb99859f Put all the special pages text in a JSON file.
Ludovic Chabant <ludovic@chabant.com>
parents: 179
diff changeset
94 files: ['wikked/assets/tpl/**/*.html', 'wikked/assets/json/**/*.json'],
125
886f36b05e5f More optimized `watch` mode for `grunt`.
Ludovic Chabant <ludovic@chabant.com>
parents: 109
diff changeset
95 tasks: ['copy:dev_templates']
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
96 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97 styles: {
161
f307d4cdc3fb Setup Wikked Pypi package:
Ludovic Chabant <ludovic@chabant.com>
parents: 159
diff changeset
98 files: ['wikked/assets/css/**/*.less'],
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
99 tasks: ['less:development']
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
100 },
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
101 gruntfile: {
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
102 files: ['Gruntfile.js'],
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
103 tasks: ['jshint:gruntfile']
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
104 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
105 }
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
106 });
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
107
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
108 // Load plugins.
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
109 grunt.loadNpmTasks('grunt-contrib-less');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
110 grunt.loadNpmTasks('grunt-contrib-requirejs');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
111 grunt.loadNpmTasks('grunt-contrib-copy');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
112 grunt.loadNpmTasks('grunt-contrib-imagemin');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
113 grunt.loadNpmTasks('grunt-contrib-jshint');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
114 grunt.loadNpmTasks('grunt-contrib-watch');
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
115
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116 // Default task(s).
103
cc1f3b81364c Better development mode:
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
117 grunt.registerTask('default', ['jshint', 'less:production', 'requirejs:production', 'imagemin:all', 'copy:production']);
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
118
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
119 // Other tasks.
103
cc1f3b81364c Better development mode:
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
120 grunt.registerTask('dev', ['less:development', 'copy:production', 'copy:development']);
101
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
121 };
13249e5ca51c Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
122