A plugin for esbuild that integrates JavaScript code obfuscation into the build pipeline. Version 0.0.5, actively developed with no regular release cadence. Differentiates by providing simple configuration via esbuild plugins, supporting various obfuscation options like control flow flattening and string encoding. Primarily used for protecting frontend code. Ships TypeScript types.
npm install esbuild-obfuscator-pluginNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Bundles a JavaScript file with esbuild and obfuscates the output using control flow flattening and base64 string array encoding.
Use esbuild.build() instead of esbuild.transform().
Test obfuscation on realistic builds and consider performance impact.
Set sourcemap: false in esbuild config if source maps are not needed.
Use import syntax or dynamic import().
Pass obfuscation options directly as shown in the quickstart.
Use dynamic import: import obfuscatorPlugin from 'esbuild-obfuscator-plugin';
Use esbuild.build() with the plugin in the plugins array.
Ensure import is default: import obfuscatorPlugin from 'esbuild-obfuscator-plugin';