summaryrefslogtreecommitdiffstats
path: root/examples/nodejs-mongodb-mongoose-restify/Gruntfile.js
diff options
context:
space:
mode:
Diffstat (limited to 'examples/nodejs-mongodb-mongoose-restify/Gruntfile.js')
-rw-r--r--examples/nodejs-mongodb-mongoose-restify/Gruntfile.js189
1 files changed, 189 insertions, 0 deletions
diff --git a/examples/nodejs-mongodb-mongoose-restify/Gruntfile.js b/examples/nodejs-mongodb-mongoose-restify/Gruntfile.js
new file mode 100644
index 0000000..cb5082a
--- /dev/null
+++ b/examples/nodejs-mongodb-mongoose-restify/Gruntfile.js
@@ -0,0 +1,189 @@
+module.exports = function( grunt ) {
+ 'use strict';
+ //
+ // Grunt configuration:
+ //
+ // https://github.com/cowboy/grunt/blob/master/docs/getting_started.md
+ //
+ grunt.initConfig({
+
+ // Project configuration
+ // ---------------------
+
+ // specify an alternate install location for Bower
+ bower: {
+ dir: 'public/components'
+ },
+
+ // Coffee to JS compilation
+ coffee: {
+ compile: {
+ files: {
+ 'temp/scripts/*.js': 'public/scripts/**/*.coffee'
+ },
+ options: {
+ basePath: 'public/scripts'
+ }
+ }
+ },
+
+ // compile .scss/.sass to .css using Compass
+ compass: {
+ dist: {
+ // http://compass-style.org/help/tutorials/configuration-reference/#configuration-properties
+ options: {
+ css_dir: 'temp/styles',
+ sass_dir: 'public/styles',
+ images_dir: 'public/images',
+ javascripts_dir: 'temp/scripts',
+ force: true
+ }
+ }
+ },
+
+ // generate application cache manifest
+ manifest:{
+ dest: ''
+ },
+
+ // headless testing through PhantomJS
+ mocha: {
+ all: ['test/**/*.html']
+ },
+
+ // default watch configuration
+ watch: {
+ coffee: {
+ files: 'public/scripts/**/*.coffee',
+ tasks: 'coffee reload'
+ },
+ compass: {
+ files: [
+ 'public/styles/**/*.{scss,sass}'
+ ],
+ tasks: 'compass reload'
+ },
+ reload: {
+ files: [
+ 'public/*.html',
+ 'public/styles/**/*.css',
+ 'public/scripts/**/*.js',
+ 'public/images/**/*'
+ ],
+ tasks: 'reload'
+ }
+ },
+
+ // default lint configuration, change this to match your setup:
+ // https://github.com/cowboy/grunt/blob/master/docs/task_lint.md#lint-built-in-task
+ lint: {
+ files: [
+ 'Gruntfile.js',
+ 'public/scripts/**/*.js',
+ 'spec/**/*.js'
+ ]
+ },
+
+ // specifying JSHint options and globals
+ // https://github.com/cowboy/grunt/blob/master/docs/task_lint.md#specifying-jshint-options-and-globals
+ jshint: {
+ options: {
+ curly: true,
+ eqeqeq: true,
+ immed: true,
+ latedef: true,
+ newcap: true,
+ noarg: true,
+ sub: true,
+ undef: true,
+ boss: true,
+ eqnull: true,
+ browser: true
+ },
+ globals: {
+ jQuery: true
+ }
+ },
+
+ // Build configuration
+ // -------------------
+
+ // the staging directory used during the process
+ staging: 'temp',
+ // final build output
+ output: 'dist',
+
+ mkdirs: {
+ staging: 'public/'
+ },
+
+ // Below, all paths are relative to the staging directory, which is a copy
+ // of the public/ directory. Any .gitignore, .ignore and .buildignore file
+ // that might appear in the public/ tree are used to ignore these values
+ // during the copy process.
+
+ // concat css/**/*.css files, inline @import, output a single minified css
+ css: {
+ 'styles/main.css': ['styles/**/*.css']
+ },
+
+ // renames JS/CSS to prepend a hash of their contents for easier
+ // versioning
+ rev: {
+ js: 'scripts/**/*.js',
+ css: 'styles/**/*.css',
+ img: 'images/**'
+ },
+
+ // usemin handler should point to the file containing
+ // the usemin blocks to be parsed
+ 'usemin-handler': {
+ html: 'index.html'
+ },
+
+ // update references in HTML/CSS to revved files
+ usemin: {
+ html: ['**/*.html'],
+ css: ['**/*.css']
+ },
+
+ // HTML minification
+ html: {
+ files: ['**/*.html']
+ },
+
+ // Optimizes JPGs and PNGs (with jpegtran & optipng)
+ img: {
+ dist: '<config:rev.img>'
+ },
+
+ // rjs configuration. You don't necessarily need to specify the typical
+ // `path` configuration, the rjs task will parse these values from your
+ // main module, using http://requirejs.org/docs/optimization.html#mainConfigFile
+ //
+ // name / out / mainConfig file should be used. You can let it blank if
+ // you're using usemin-handler to parse rjs config from markup (default
+ // setup)
+ rjs: {
+ // no minification, is done by the min task
+ optimize: 'none',
+ baseUrl: './scripts',
+ wrap: true,
+ name: 'main'
+ },
+
+ // While Yeoman handles concat/min when using
+ // usemin blocks, you can still use them manually
+ concat: {
+ dist: ''
+ },
+
+ min: {
+ dist: ''
+ }
+ });
+
+ // Alias the `test` task to run the `mocha` task instead
+ grunt.registerTask('test', 'server:phantom mocha');
+
+};