
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
merge-json-webpack-plugin
Advanced tools
Webpack plugin to merge multiple json files into one
npm i -D merge-json-webpack-plugin
# or
yarn add --dev merge-json-webpack-plugin
// webpack.config.js
const MergeJsonPlugin = require('merge-json-webpack-plugin');
module.exports = {
plugins: [
new MergeJsonPlugin({
force: false,
groups: [
{
files: [
'common-manifest.json',
'firefox-manifest.json'
],
transform: (outputJson) => outputJson,
to: 'manifest.json',
},
{
pattern: '*.json', // glob. see https://github.com/mrmlnc/fast-glob
to: 'merged-[contenthash].json',
},
],
}),
],
};
cwd[string] - The directory, an absolute path, for resolving files. Defaults to webpack context
groups[array] - Files to merge and destination path
string[]] - Array of files, path resolved relative to cwd.string[]] or [string] - [Fast-Glob] pattern matching. The order of merge is not guarenteed.function] - A function to modify the merged json contents. The return json value is written to the output file. If the function returns a promise, it will be awaited.string]: Destination path to write the files to.GlobOptions] - Options to foward to fast-glob when glob is used otherwise ignored. See https://github.com/mrmlnc/fast-glob#options-3.minify[boolean] - Minify the output json. Enabled by default in production mode.
mergeFn[function] - A function used to merge two objects. Defaults to Object.assign.
// webpack.config.js
const MergeJsonPlugin = require('merge-json-webpack-plugin');
const _ = require('loadsh');
const customizer = (objValue, srcValue) => {
if (_.isArray(objValue)) {
return objValue.concat(srcValue);
}
};
const merge = (object, other) => {
return _.mergeWith(object, other, customizer);
};
module.exports = {
plugins: [
new MergeJsonPlugin({
mergeFn: merge,
}),
new MergeJsonPlugin({
mergeFn: (prev, current) => Object.assign(prev, current),
}),
],
};
force[boolean] - Overwrites files already in compilation.assets (usually added by other plugins/loaders). Disabled by default.
globOptions[GlobOptions] - Options to foward to fast-glob when glob is used otherwise ignored. See https://github.com/mrmlnc/fast-glob#options-3.
FAQs
Webpack plugin to merge multiple json files into one
The npm package merge-json-webpack-plugin receives a total of 460 weekly downloads. As such, merge-json-webpack-plugin popularity was classified as not popular.
We found that merge-json-webpack-plugin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.