Skip to content

Commit 46ab859

Browse files
pchunkyadi-herwana-nus
authored andcommitted
perf(webpack): generate gzip, brotli compressed bundles
1 parent 439cdc9 commit 46ab859

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

client/webpack.prod.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ const { merge } = require('webpack-merge');
22
const TerserPlugin = require('terser-webpack-plugin');
33
const MomentTimezoneDataPlugin = require('moment-timezone-data-webpack-plugin');
44
const ImageMinimizerPlugin = require('image-minimizer-webpack-plugin');
5+
const CompressionPlugin = require('compression-webpack-plugin');
6+
const zlib = require('zlib');
57

68
const common = require('./webpack.common');
79

@@ -67,5 +69,19 @@ module.exports = merge(common, {
6769
implementation: ImageMinimizerPlugin.svgoMinify,
6870
},
6971
}),
72+
new CompressionPlugin({
73+
test: /\.(js|css|html|svg|png)$/,
74+
algorithm: 'gzip',
75+
}),
76+
new CompressionPlugin({
77+
algorithm: 'brotliCompress',
78+
test: /\.(js|css|html|svg|png)$/,
79+
compressionOptions: {
80+
params: {
81+
[zlib.constants.BROTLI_PARAM_QUALITY]: 11,
82+
},
83+
},
84+
threshold: 10240,
85+
}),
7086
],
7187
});

0 commit comments

Comments
 (0)