relative/synchrony

javascript-obfuscator cleaner & deobfuscator

TypeScript

1,253

130 commits

updated Jul 7, 2026

See the code

README

synchrony

rip javascript-obfuscator

javascript cleaner & deobfuscator (primarily javascript-obfuscator/obfuscator.io)

API reference is available at https://relative.github.io/synchrony

Usage note

Artifacts produced by old versions of javascript-obfuscator will likely not deobfuscate correctly, please DO NOT open an issue. Try previous versions of synchrony or another deobfuscator.

There is no user configuration as of yet, the string decoder works automatically

Usage

Use the latest version at https://deobfuscate.relative.im or install from NPM

# 1. Install deobfuscator globally using yarn/npm
npm install --global deobfuscator # alternatively, yarn global add deobfuscator, pnpm install --global deobfuscator

# 1.1. Or Install from Git
# npm install --global relative/synchrony#master # alternatively, yarn global add relative/synchrony#master, pnpm install --global relative/synchrony#master

# 2. Get an obfuscated file
curl https://gist.github.com/relative/79e392bced4b9bed8fd076f834e06dee/raw/obfuscated.js -o ./obfuscated.js

# 3. Run deobfuscator
synchrony deobfuscate ./obfuscated.js

# 4. Check the reuslts of your debofuscation at script.cleaned.js
cat ./obfuscated.cleaned.js

Transformer errors

Transformer errors will show errors in your terminal output like

Caught an error while attempting to run AST visitor!
node = Node {...}
err = ...

Copy the entire terminal output (or redirect it to a file). Then open a new issue with the terminal output and the obfuscated file and any config you may have used.

Please do not include screenshots or partial output from the deobfuscator.

If you can reproduce the error with a smaller input file and a javascript-obfuscator config, please provide them in your issue.

demangle
deobfuscator
javascript
javascript-deobfuscator
javascript-obfuscator
unmangle

relative/synchrony

javascript-obfuscator cleaner & deobfuscator

TypeScript

1,253

130 commits

updated Jul 7, 2026

See the code

README

synchrony

rip javascript-obfuscator

javascript cleaner & deobfuscator (primarily javascript-obfuscator/obfuscator.io)

API reference is available at https://relative.github.io/synchrony

Usage note

Artifacts produced by old versions of javascript-obfuscator will likely not deobfuscate correctly, please DO NOT open an issue. Try previous versions of synchrony or another deobfuscator.

There is no user configuration as of yet, the string decoder works automatically

Usage

Use the latest version at https://deobfuscate.relative.im or install from NPM

# 1. Install deobfuscator globally using yarn/npm
npm install --global deobfuscator # alternatively, yarn global add deobfuscator, pnpm install --global deobfuscator

# 1.1. Or Install from Git
# npm install --global relative/synchrony#master # alternatively, yarn global add relative/synchrony#master, pnpm install --global relative/synchrony#master

# 2. Get an obfuscated file
curl https://gist.github.com/relative/79e392bced4b9bed8fd076f834e06dee/raw/obfuscated.js -o ./obfuscated.js

# 3. Run deobfuscator
synchrony deobfuscate ./obfuscated.js

# 4. Check the reuslts of your debofuscation at script.cleaned.js
cat ./obfuscated.cleaned.js

Transformer errors

Transformer errors will show errors in your terminal output like

Caught an error while attempting to run AST visitor!
node = Node {...}
err = ...

Copy the entire terminal output (or redirect it to a file). Then open a new issue with the terminal output and the obfuscated file and any config you may have used.

Please do not include screenshots or partial output from the deobfuscator.

If you can reproduce the error with a smaller input file and a javascript-obfuscator config, please provide them in your issue.

demangle
deobfuscator
javascript
javascript-deobfuscator
javascript-obfuscator
unmangle

Significant stargazers

Alba Mendez

565 followers · starred Apr 2024

Kendell

121 followers · starred Apr 2022

Yavor Kolev

92 followers · starred Dec 2024

Grace

107 followers · starred Aug 2025