esbuild-plugin-remove-duplicate-require

raw JSON →
0.0.0 verified Fri May 01 auth: no javascript

ESBuild plugin that removes duplicate require statements from minified builds, reducing bundle size. Version 0.0.0 is the initial release. It works by detecting and deduplicating repeated require() calls in the output, which can occur when multiple modules import the same dependency. Different from many plugins, it focuses specifically on the final bundle output rather than during tree-shaking. Ships TypeScript types.

error Error: Cannot find module 'esbuild-plugin-remove-duplicate-require'
cause Wrong package name used.
fix
npm install esbuild-plugin-rdi
error TypeError: rdiPlugin is not a function
cause Default import used instead of named import.
fix
import { rdiPlugin } from 'esbuild-plugin-rdi'
gotcha Plugin modifies the final bundle after minification; ensure it runs after other plugins that might introduce duplicates.
fix Place rdiPlugin last in the plugins array.
deprecated The package name in npm is 'esbuild-plugin-rdi' not 'esbuild-plugin-remove-multiple-require'.
fix Install as 'esbuild-plugin-rdi'. Import from 'esbuild-plugin-rdi'.
npm install esbuild-plugin-remove-multiple-require
yarn add esbuild-plugin-remove-multiple-require
pnpm add esbuild-plugin-remove-multiple-require

Uses rdiPlugin in an esbuild build to remove duplicate require statements from the bundled output.

import { rdiPlugin } from 'esbuild-plugin-rdi';
import * as esbuild from 'esbuild';

await esbuild.build({
  entryPoints: ['app.ts'],
  bundle: true,
  outfile: 'out.js',
  plugins: [rdiPlugin()],
});