{"id":22134,"library":"rollup-plugin-minify","title":"rollup-plugin-minify","description":"A Rollup plugin that generates minified output files using UglifyJS, creating separate .min.js files with source maps. Version 1.0.3, last updated in 2017. It hooks into Rollup's ongenerate event to minify specific output formats (e.g., iife, cjs) after generation. Different from rollup-plugin-uglify which replaces the original output, this plugin creates additional files. Limited to UglifyJS (no Terser support) and has no updates since 2017.","status":"maintenance","version":"1.0.3","language":"javascript","source_language":"en","source_url":"https://github.com/futurist/rollup-plugin-minify","tags":["javascript","rollup","rollup-plugin","minify","uglify"],"install":[{"cmd":"npm install rollup-plugin-minify","lang":"bash","label":"npm"},{"cmd":"yarn add rollup-plugin-minify","lang":"bash","label":"yarn"},{"cmd":"pnpm add rollup-plugin-minify","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core minification engine; required at runtime.","package":"uglify-js","optional":false}],"imports":[{"note":"The plugin exports a default function, not a named export.","wrong":"import { minify } from 'rollup-plugin-minify'","symbol":"default","correct":"import minify from 'rollup-plugin-minify'"},{"note":"In CommonJS, the default export is accessed via require, not destructured.","wrong":"const { minify } = require('rollup-plugin-minify')","symbol":"default (CommonJS)","correct":"const minify = require('rollup-plugin-minify')"},{"note":"Options are per-format, not a single dest. Each format key maps to a string or object.","wrong":"minify({ dest: 'bundle.min.js' })","symbol":"usage","correct":"minify({ iife: 'iife.min.js', cjs: 'cjs.min.js' })"}],"quickstart":{"code":"import { rollup } from 'rollup';\nimport minify from 'rollup-plugin-minify';\n\nrollup({\n  input: 'src.js',\n  plugins: [\n    minify({ iife: 'iife.min.js', cjs: 'cjs.min.js' })\n  ]\n}).then(bundle => {\n  // bundle generated\n});","lang":"javascript","description":"Shows basic usage: import default export and pass per-format minified output filenames."},"warnings":[{"fix":"Consider using rollup-plugin-terser or @rollup/plugin-terser for modern JavaScript.","message":"Uses UglifyJS (not Terser) which is outdated for ES6+ code.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Use object form for advanced options: { iife: { dest: 'file.min.js', mangle: false } }","message":"Options are per-format (e.g., iife, cjs) not global. Passing a string as value sets dest option.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Do not specify the same file in both the plugin and Rollup output.file.","message":"Output files are written by the plugin itself, not by Rollup's output options. Ensure no conflicts.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Check the format matches one of these or test output.","message":"Only works with formats iife, cjs, es, amd, umd. Other formats may not produce files.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use `import minify from 'rollup-plugin-minify'` instead of `import { minify } from ...`","cause":"Trying to use destructured import on a default export.","error":"TypeError: minify is not a function"},{"fix":"Ensure each format option is either a string (dest) or an object with a 'dest' string property.","cause":"Passing an object without a 'dest' property or incorrect type.","error":"Error: The 'dest' option must be a string"},{"fix":"Run `npm install uglify-js` alongside rollup-plugin-minify.","cause":"uglify-js is a peer dependency not automatically installed.","error":"Error: Cannot find module 'uglify-js'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}