Skip to content

Commit

Permalink
finish
Browse files Browse the repository at this point in the history
  • Loading branch information
rwieruch committed Jun 24, 2019
1 parent 4ca7beb commit 987c434
Show file tree
Hide file tree
Showing 11 changed files with 446 additions and 5 deletions.
1 change: 1 addition & 0 deletions .env.development
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NODE_ENV=development
1 change: 1 addition & 0 deletions .env.production
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NODE_ENV=production
11 changes: 11 additions & 0 deletions build-utils/addons/webpack.bundleanalyze.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const WebpackBundleAnalyzer = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;

module.exports = {
plugins: [
new WebpackBundleAnalyzer({
analyzerMode: 'static',
reportFilename: './report.html',
openAnalyzer: false
})
]
};
7 changes: 7 additions & 0 deletions build-utils/addons/webpack.bundlevisualizer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const Visualizer = require('webpack-visualizer-plugin');

module.exports = {
plugins: [
new Visualizer()
]
};
5 changes: 3 additions & 2 deletions webpack.config.js → build-utils/webpack.common.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
const path = require('path');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin')

Expand All @@ -23,11 +24,11 @@ module.exports = {
})
],
output: {
path: __dirname + '/dist',
path: path.resolve(__dirname, '../', 'dist'),
publicPath: '/',
filename: 'bundle.js'
},
devServer: {
contentBase: './dist'
}
},
};
20 changes: 20 additions & 0 deletions build-utils/webpack.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
const webpack = require('webpack');
const webpackMerge = require('webpack-merge');
const path = require('path');

const commonConfig = require('./webpack.common.js');

const getAddons = addonsArgs => {
let addons = Array.isArray(addonsArgs) ?
addonsArgs : [addonsArgs];

return addons
.filter(Boolean)
.map(name => require(`./addons/webpack.${name}.js`));
};

module.exports = ({ env, addon }) => {
const envConfig = require(`./webpack.${env}.js`);

return webpackMerge(commonConfig, envConfig, ...getAddons(addon));
};
11 changes: 11 additions & 0 deletions build-utils/webpack.dev.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const Dotenv = require('dotenv-webpack');

module.exports = {
mode: 'development',
devtool: 'eval-source-map',
plugins: [
new Dotenv({
path: './.env.development',
})
],
};
11 changes: 11 additions & 0 deletions build-utils/webpack.prod.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const Dotenv = require('dotenv-webpack');

module.exports = {
mode: 'production',
devtool: 'source-map',
plugins: [
new Dotenv({
path: './.env.production',
})
],
};
Loading

0 comments on commit 987c434

Please sign in to comment.