Created
June 13, 2015 11:42
-
-
Save pekkis/e288ec94792dd91f1bc9 to your computer and use it in GitHub Desktop.
Lusso
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var webpack = require('webpack'); | |
module.exports = function (grunt) { | |
'use strict'; | |
require('jit-grunt')(grunt); | |
grunt.loadNpmTasks('grunt-text-replace'); | |
grunt.initConfig({ | |
pkg: grunt.file.readJSON('package.json'), | |
'http-server': { | |
'dev': { | |
// the server root directory | |
root: 'client/web', | |
port: 7778, | |
// port: function() { return 8282; } | |
host: "0.0.0.0", | |
cache: 0, | |
showDir : true, | |
autoIndex: true, | |
// server default file extension | |
ext: "html", | |
// run in parallel with other tasks | |
runInBackground: false | |
} | |
}, | |
webpack: { | |
options: { | |
storeStatsTo: "stats", | |
entry: "./client/app.js", | |
output: { | |
path: "client/web", | |
publicPath: "/", | |
filename: "app.js", | |
}, | |
module: { | |
loaders: [ | |
{ | |
test: /\.js$/, | |
loader: 'babel-loader', | |
exclude: /node_modules/, | |
}, | |
{ | |
test: /\.less$/, | |
loader: "style-loader!css-loader!autoprefixer-loader?browsers=last 2 version!less-loader" | |
}, | |
{ | |
test: /\.(jpe?g|png|gif)$/i, | |
loaders: ['image?optimizationLevel=7&interlaced=true'] | |
}, | |
{ | |
test: /\.(woff|woff2)(\?v=[0-9]\.[0-9]\.[0-9])?$/, | |
loader: "url-loader?limit=10000&mimetype=application/font-woff" | |
}, | |
{ | |
test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, | |
loader: "file-loader" | |
} | |
], | |
} | |
}, | |
dev: { | |
progress: true, | |
failOnError: false, | |
watch: true, | |
keepalive: true | |
}, | |
prod: { | |
progress: true, | |
failOnError: false, | |
watch: false, | |
keepalive: false, | |
output: { | |
path: "client/web", | |
publicPath: "/", | |
filename: "app.[hash].js", | |
}, | |
plugins: [ | |
new webpack.optimize.UglifyJsPlugin({ | |
'mangle': false, | |
'compress': { | |
dead_code : false, // discard unreachable code | |
unsafe : false, // some unsafe optimizations (see below) | |
unused : false, // drop unused variables/functions | |
hoist_vars : false, // hoist variable declarations | |
side_effects : false, // drop side-effect-free statements | |
global_defs : {} // glob | |
} | |
}), | |
], | |
} | |
}, | |
replace: { | |
revision: { | |
src: ['client/web/index.html'], // source files array (supports minimatch) | |
dest: 'client/web/', // destination directory or file | |
replacements: [ | |
{ | |
from: /app(\.[a-z0-9]+)?\.js?/gi, // regex replacement ('Fooo' to 'Mooo') | |
to: 'app.<%= stats.hash %>.js' | |
} | |
] | |
} | |
} | |
}); | |
grunt.registerTask('default', ['webpack:prod', 'replace']); | |
grunt.registerTask('dev', ['webpack:dev']); | |
}; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"name": "mhm-2015", | |
"version": "1.0.0", | |
"dependencies": { | |
"autoprefixer-loader": "^1.2.0", | |
"avatar-generator": "^1.0.6", | |
"babel": "^5.2.6", | |
"babel-core": "^5.2.6", | |
"babel-loader": "^5.0.0", | |
"bluebird": "^2.9.25", | |
"bootstrap": "^3.3.4", | |
"classnames": "^1.2.2", | |
"clone": "^1.0.2", | |
"css-loader": "^0.12.0", | |
"eventemitter3": "^1.0.1", | |
"express": "^4.12.3", | |
"file-loader": "^0.8.1", | |
"grunt": "^0.4.5", | |
"grunt-http-server": "^1.3.0", | |
"grunt-text-replace": "^0.4.0", | |
"grunt-webpack": "^1.0.8", | |
"image-loader": "0.0.1", | |
"immutable": "^3.7.2", | |
"jit-grunt": "^0.9.1", | |
"less": "^2.5.0", | |
"less-loader": "^2.2.0", | |
"node-uuid": "^1.4.3", | |
"random-js": "^1.0.4", | |
"react": "^0.13.2", | |
"react-bootstrap": "^0.21.2", | |
"react-dnd": "^0.9.8", | |
"react-router": "^0.13.3", | |
"react-router-bootstrap": "^0.13.0", | |
"reflux": "^0.2.7", | |
"roundrobin": "^1.0.2", | |
"socket.io": "^1.3.5", | |
"socket.io-client": "^1.3.5", | |
"stochasm": "^0.5.0", | |
"style-loader": "^0.12.1", | |
"underscore": "^1.8.3", | |
"url-loader": "^0.5.5", | |
"webpack": "^1.8.11", | |
"webpack-dev-server": "^1.8.2" | |
}, | |
"scripts": { | |
"babel-node": "babel-node --stage=0", | |
"start": "grunt http-server & grunt dev & node server/avatar-server.js & nodemon --exec npm run babel-node -- server/server.js" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment