Mercurial > wikked
annotate Gruntfile.js @ 101:13249e5ca51c
Big refactor for better database caching:
- Using SQL alchemy instead of raw SQLite.
- Better architecture and internal APIs.
- Fixed some issues where the database was not used correctly.
- Fixed some problems with querying pages.
Got rid of `Makefile`, now using `grunt`.
Now using a custom `Bootstrap` include file.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Tue, 05 Nov 2013 08:13:18 -0800 |
parents | |
children | cc1f3b81364c |
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: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
9 paths: ["static"] |
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: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
12 "build/css/wikked.min.css": "static/css/wikked.less" |
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: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
17 paths: ["static"], |
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: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
21 "build/css/wikked.min.css": "static/css/wikked.less" |
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", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
29 baseUrl: "static", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
30 mainConfigFile: "static/js/wikked.js", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
31 name: "js/wikked", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
32 out: "build/js/wikked.min.js" |
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", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
38 baseUrl: "static", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
39 mainConfigFile: "static/js/wikked.js", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
40 name: "js/wikked", |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
41 out: "build/js/wikked.min.js" |
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: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
47 files: [ |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
48 {expand: true, cwd: 'static/', dest: 'build/', src: ['img/*.{png,jpg,gif}']} |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
49 ] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
50 } |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
51 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
52 copy: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
53 images: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
54 files: [ |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
55 {expand: true, cwd: 'static/', dest: 'build/', src: ['img/**']} |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
56 ] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
57 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
58 production: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
59 files: [ |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
60 {expand: true, cwd: 'static/', dest: 'build/', src: ['js/require.js']}, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
61 {expand: true, cwd: 'static/', dest: 'build/', src: ['css/*.css']}, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
62 {expand: true, cwd: 'static/', dest: 'build/', src: ['font-awesome/font/**']} |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
63 ] |
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 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
66 jshint: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
67 all: ['static/js/wikked.js', 'static/js/wikked/**/*.js'], |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
68 gruntfile: ['Gruntfile.js'] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
69 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
70 watch: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
71 scripts: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
72 files: ['static/js/**/*.js'], |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
73 tasks: ['jshint', 'requirejs:development'] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
74 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
75 templates: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
76 files: ['static/tpl/**/*.html'], |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
77 tasks: ['requirejs:development'] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
78 }, |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
79 styles: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
80 files: ['static/css/**/*.less'], |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
81 tasks: ['less:development'] |
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 gruntfile: { |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
84 files: ['Gruntfile.js'], |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
85 tasks: ['jshint:gruntfile'] |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
86 } |
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 }); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
89 |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
90 // Load plugins. |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
91 grunt.loadNpmTasks('grunt-contrib-less'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
92 grunt.loadNpmTasks('grunt-contrib-requirejs'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
93 grunt.loadNpmTasks('grunt-contrib-copy'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
94 grunt.loadNpmTasks('grunt-contrib-imagemin'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
95 grunt.loadNpmTasks('grunt-contrib-jshint'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
96 grunt.loadNpmTasks('grunt-contrib-watch'); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
97 |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
98 // Default task(s). |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
99 grunt.registerTask('default', ['less:production', 'requirejs:production', 'imagemin:all', 'copy:production']); |
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 // Other tasks. |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
102 grunt.registerTask('dev', ['less:development', 'requirejs:development', 'copy:production', 'copy:images']); |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
103 }; |
13249e5ca51c
Big refactor for better database caching:
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
104 |