// Generated on 2014-03-28 using generator-phaser-official 0.0.8-rc-2 'use strict'; var _ = require('underscore'); _.str = require('underscore.string'); // Mix in non-conflict functions to Underscore namespace if you want _.mixin(_.str.exports()); var LIVERELOAD_PORT = 35729; var lrSnippet = require('connect-livereload')({port: LIVERELOAD_PORT}); var mountFolder = function (connect, dir) { return connect.static(require('path').resolve(dir)); }; module.exports = function (grunt) { // load all grunt tasks require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks); grunt.initConfig({ watch: { scripts: { files: [ 'game/**/*.js', '!game/main.js' ], options: { spawn: false, livereload: LIVERELOAD_PORT }, tasks: ['build'] } }, connect: { options: { port: 9000, // change this to '0.0.0.0' to access the server from outside hostname: 'localhost' }, livereload: { options: { middleware: function (connect) { return [ lrSnippet, mountFolder(connect, 'dist') ]; } } } }, open: { server: { path: 'http://localhost:9000' } }, copy: { dist: { files: [ { expand: true, src: ['assets/**'], dest: 'dist/' }, { expand: true, flatten: true, src: ['vendor/*.js'], dest: 'dist/js/' }, { expand: true, src: ['css/**'], dest: 'dist/' }, { expand: true, src: ['index.html'], dest: 'dist/' } ] } }, browserify: { build: { src: ['game/main.js'], dest: 'dist/js/game.js' } } }); grunt.registerTask('build', ['browserify','copy']); grunt.registerTask('serve', ['build', 'connect:livereload', 'open', 'watch']); grunt.registerTask('default', ['serve']); };