{"id":26610,"library":"vue-cli-plugin-multi-compiler","title":"Multi-Compiler for Vue CLI","description":"Vue CLI 3 plugin enabling webpack multi-compiler mode, allowing parallel builds of multiple configs from a single vue-cli project. Current version 0.1.0 targets Node >=8 and Vue CLI 3 ecosystems. Key differentiator: supports both function and array configuration modes for splitting webpack configs, with automatic merging via webpack-merge when using array mode. Low release cadence with no updates since initial release. Use for projects needing multiple entry points or separate build targets from the same Vue CLI setup, such as main + app bundles.","status":"active","version":"0.1.0","language":"javascript","source_language":"en","source_url":"https://github.com/jkzing/vue-cli-plugin-multi-compiler","tags":["javascript","vue","cli","webpack"],"install":[{"cmd":"npm install vue-cli-plugin-multi-compiler","lang":"bash","label":"npm"},{"cmd":"yarn add vue-cli-plugin-multi-compiler","lang":"bash","label":"yarn"},{"cmd":"pnpm add vue-cli-plugin-multi-compiler","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"The plugin itself must be installed via vue add","package":"vue-cli-plugin-multi-compiler","optional":false},{"reason":"Used for deep cloning webpack config in function mode","package":"lodash.clonedeep","optional":true},{"reason":"Used internally for array mode merging","package":"webpack-merge","optional":false}],"imports":[],"quickstart":{"code":"// Install via Vue CLI\nvue add multi-compiler\n\n// In vue.config.js\nmodule.exports = {\n  pluginOptions: {\n    configureMultiCompilerWebpack: webpackConfig => {\n      const cloneDeep = require('lodash.clonedeep');\n      const mainConfig = cloneDeep(webpackConfig);\n      const appConfig = cloneDeep(webpackConfig);\n      mainConfig.entry = { main: './src/main.js' };\n      appConfig.entry = { app: './src/app.js' };\n      return [mainConfig, appConfig];\n    }\n  }\n};\n\n// Run build\nvue-cli-service build","lang":"javascript","description":"Shows how to add the plugin and configure multiple webpack configs using function mode in vue.config.js."},"warnings":[{"fix":"Use Vue CLI 3 or migrate to @vue/cli-service with custom webpack chain.","message":"The plugin only works with Vue CLI 3. It is incompatible with Vue CLI 4+ (no webpack version checks).","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Migrate project to Vue CLI 4 or use Vite with custom builds.","message":"Vue CLI 3 is deprecated. Consider upgrading to Vue CLI 4+ or Vite.","severity":"deprecated","affected_versions":">=0.1.0"},{"fix":"Install lodash.clonedeep and require it inside the function.","message":"The function mode expects lodash.clonedeep for deep cloning; not providing it will cause reference issues.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run 'npm install webpack-merge --save-dev' or 'yarn add webpack-merge --dev'.","cause":"Missing runtime dependency webpack-merge (used internally by array mode).","error":"Cannot find module 'webpack-merge'"},{"fix":"Wrap config in pluginOptions: { configureMultiCompilerWebpack: ... }","cause":"Misplaced configuration under vue.config.js root instead of pluginOptions.","error":"Property 'configureMultiCompilerWebpack' does not match any schema"},{"fix":"Ensure the function returns an array of valid webpack configuration objects.","cause":"Function mode returned a non-array or malformed config array.","error":"TypeError: webpackConfig.entry is not iterable"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}