Skip to content

Rollup plugin to minify or clean up generated bundles using esbuild.

License

Notifications You must be signed in to change notification settings

prantlf/rollup-plugin-esbuild-minify

Repository files navigation

rollup-plugin-esbuild-minify

Latest version Dependency status Coverage

Rollup plugin to minify or clean up generated bundles using esbuild.

Simpler than rollup-plugin-esbuild and rollup-plugin-esbuild-transform, focusing only on minification of the bundled JavaScript output. Faster than @rollup/plugin-terser. See also benchmark results of various minifiers.

Synopsis

import { minify } from 'rollup-plugin-esbuild-minify'

export default {
  plugins: [minify()]
  // the rest of the configuration
}

Installation

Make sure that you use Node.js 14 or newer and Rollup 2 or newer. Use your favourite package manager - NPM, PNPM or Yarn:

npm i -D rollup-plugin-esbuild-minify
pnpm i -D rollup-plugin-esbuild-minify
yarn add -D rollup-plugin-esbuild-minify

Usage

Create a rollup.config.js configuration file and import the plugin:

import { minify } from 'rollup-plugin-esbuild-minify'

export default {
  input: 'src/index.js',
  output: { file: 'dist/main.js', format: 'iife', sourcemap: true },
  plugins: [
    minify({ logLevel: 'debug', logLimit: 100 })
  ]
}

Then call rollup either via the command-line or programmatically.

Options

The following options can be passed in an object to the plugin function to change the default values.

logLevel

Type: 'silent' | 'error' | 'warning' | 'info' | 'debug' | 'verbose'
Default: 'warning'

Controls the number and detail of progress messages logged on the console.

See also the original documentation.

logLimit

Type: Integer
Default: 10

Maximum number of logged messages. If zero (0) is provided, all messages will be logged.

See also the original documentation.

legalComments

Type: 'none' | 'inline' | 'eof' | 'linked' | 'external'
Default: 'none'

Allows including or extracting legal comments. A "legal comment" is considered to be any statement-level comment that contains @license or @preserve or that starts with //! or /*!.

See also the original documentation.

minify

Type: Boolean
Default: true

Allows disabling the minification. The code will be pretty-printed instead. It can be used to clean up the code.

See also the original documentation.

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Lint and test your code.

License

Copyright (C) 2022-2024 Ferdinand Prantl

Licensed under the MIT License.

About

Rollup plugin to minify or clean up generated bundles using esbuild.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •