Local Obfuscator
JS Obfuscator Console
Upload or paste JavaScript/Luau, tune options, and generate a hardened build.
Workflow
1. Drop a file or paste source.
2. Pick preset or fine-tune options.
3. Run, then download output + map.
Input
Source file
Drop a JavaScript or Luau file here
Paste source
Input filename
Output filename
Options
Preset
High
Balanced
Low
Custom
Seed
Language
JavaScript
Luau
VM Include (comma)
Rename identifiers
Encrypt strings
Control-flow flattening
Dead-code injection
VM virtualization
Anti-hook guard
Lock built-ins (anti-hook)
Emit source map
Compact output (JS) / one line (Luau)
Print plugin timings
JavaScript Options
ECMA Target
Minify output (Terser)
Beautify output (requires minify)
CFF downlevel let/const
String Options (JS)
Encode object keys
Encode JSX attrs
Encode template chunks
Luau Options
String + CFF (Luau)
Split long strings
Luau style
default
Split min length
Split max parts
Segment size
Encode value-fallback literals
CFF mode
classic
vm
Opaque predicates
Rename + Extras (Luau)
Rename globals
Rename members
Homoglyph alphabet
Mask globals via _ENV
Wrap in function
Wrap iterations
Proxify locals
Numbers to expressions
Numbers threshold (0-1)
Numbers inner chance (0-1)
Numbers max depth
Constant array
Const-array threshold (0-1)
Const-array strings only
Const-array shuffle
Const-array rotate
Const-array wrapper
Const-array encoding
base64
none
Pad footer noise
Pad footer blocks
VM (Luau)
Opcode shuffle
Bytecode decrypt
Consts decrypt
Consts split
Consts split size
Consts encoding
table
string
Runtime key
Runtime split
Top-level VM
Block dispatch
Downlevel let/const
Decoy runtime
ISA polymorph
Fake dispatch edges
VM debug logs
VM layers
Fake opcode ratio (0-1)
Decoy probability (0-1)
Decoy string count
Dispatch graph
auto
tree
sparse
Stack protocol
auto
direct
api
Numeric style
mixed
chaos
plain
Output
Obfuscated code
Obfuscate
Download Result
Download Source Map
Copy Output
Clear
Idle.
Startup Log