Registry /
devops / vite-plugin-bundle-obfuscator
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–223 runs
build_error
glibcnode 18–223 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
default
✓ import vitePluginBundleObfuscator from 'vite-plugin-bundle-obfuscator'
✗ const vitePluginBundleObfuscator = require('vite-plugin-bundle-obfuscator')
ESM-only since v1.0. No CommonJS export.
types
✓ import type { Options } from 'vite-plugin-bundle-obfuscator'
TypeScript type exports are available.
createPlugin
✓ import vitePluginBundleObfuscator from 'vite-plugin-bundle-obfuscator'
✗ import { vitePluginBundleObfuscator } from 'vite-plugin-bundle-obfuscator'
The package exports a default function only; named import does not exist.
Basic setup of vite-plugin-bundle-obfuscator in vite.config.ts with common obfuscator options.
import { defineConfig } from 'vite';
import vitePluginBundleObfuscator from 'vite-plugin-bundle-obfuscator';
export default defineConfig({
plugins: [
vitePluginBundleObfuscator({
enable: true,
log: true,
autoExcludeNodeModules: true,
excludes: [],
options: {
compact: true,
controlFlowFlattening: true,
controlFlowFlatteningThreshold: 0.75,
deadCodeInjection: false,
debugProtection: false,
disableConsoleOutput: true,
identifierNamesGenerator: 'hexadecimal',
numbersToExpressions: true,
simplify: true,
stringArray: true,
stringArrayEncoding: ['base64'],
stringArrayThreshold: 0.75,
transformObjectKeys: true,
unicodeEscapeSequence: false
}
})
]
});
Errors
Common errors & fixes
Module "vite-plugin-bundle-obfuscator" has been resolved to ESM but a CommonJS module is required.
The package is ESM-only and cannot be required with require().
fixUse import instead: import vitePluginBundleObfuscator from 'vite-plugin-bundle-obfuscator'
TypeError: vitePluginBundleObfuscator is not a function
Using named import instead of default import.
fixUse: import vitePluginBundleObfuscator from 'vite-plugin-bundle-obfuscator' (not in curly braces)
Error: The plugin requires Vite 4.0.0 or newer, but found version 3.x.
Vite version is too old; minimum required is 4.0.0.
fixUpdate Vite to version 4.0.0 or newer: npm install vite@latest
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
Build process ran out of memory due to large codebase being obfuscated.
fixSet NODE_OPTIONS=--max-old-space-size=8192 before build command.
Audit
Dependencies
viterequiredpeer dependency - plugin runs only in Vite projects
javascript-obfuscatorrequiredruntime dependency for core obfuscation logic