1
0
mirror of https://github.com/fazo96/ipfs-boards synced 2025-01-10 12:24:20 +01:00
ipfs-boards/webpack.config.js
2015-11-28 09:01:38 +01:00

73 lines
1.8 KiB
JavaScript

var path = require('path')
var webpack = require('webpack')
var HtmlWebpackPlugin = require('html-webpack-plugin')
// Most of the config was copied from js-ipfs-api's webpack configuration
module.exports = {
entry: './webapp/app.jsx',
debug: true,
output: {
path: path.join(__dirname,'webapp','dist'),
filename: 'app.js'
},
resolve: {
modulesDirectories: [
'node_modules', './webapp/', 'lib', './webapp/components/', './webapp/assets/',
'./webapp/pages/', 'node_modules/font-awesome/css', 'node_modules/font-awesome/fonts'
],
alias: {
http: 'stream-http',
https: 'https-browserify'
}
},
module: {
loaders: [
{ test: /\.(ttf|eot|svg|woff(2?))(\?v=\d+\.\d+\.\d+)?$/, loader: 'file' },
{ test: /\.css$/, loaders: ['style','css'] },
{ test: /\.md$/, loaders: ['html','markdown'] },
{ test: /\.json$/, loader: 'json' },
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel',
query: {
presets: ['es2015','react'],
plugins: ['transform-runtime']
}
},
{
test: /\.js$/,
include: /node_modules\/(ipfs-api|hoek|qs|boom|wreck)/,
loader: 'babel',
query: {
presets: ['es2015'],
plugins: ['transform-runtime']
}
}
]
},
externals: {
net: '{}',
fs: '{}',
tls: '{}',
console: '{}',
'require-dir': '{}'
},
plugins: [
new HtmlWebpackPlugin({
title: 'Boards',
template: 'webapp/index.html',
inject: 'body'
}),
// Optimization
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false
}
}),
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.optimize.DedupePlugin()
]
}