webcrack
โ View on GitHubAI Summary: webcrack is a reverse engineering tool designed for JavaScript that deobfuscates code produced by obfuscator.io, unminifies, and unpacks files from webpack and browserify, aiming to restore the original source code structure. Notable features include performance optimizations, auto-detection of code patterns, and the removal of obfuscator artifacts, all implemented in TypeScript with a robust testing suite. The tool is accessible via a command line interface and offers an API for integration into other applications.
README

webcrack
webcrack is a tool for reverse engineering javascript. It can deobfuscate obfuscator.io, unminify, transpile, and unpack webpack/browserify, to resemble the original source code as much as possible.
Try it in the online playground or view the documentation.
- ๐ Performance - Various optimizations to make it fast
- ๐ก๏ธ Safety - Considers variable references and scope
- ๐ฌ Auto-detection - Finds code patterns without needing a config
- โ๐ป Readability - Removes obfuscator/bundler artifacts
- โจ๏ธ TypeScript - All code is written in TypeScript
- ๐งช Tests - To make sure nothing breaks
Requirements
Node.js 22 or 24.
Command Line Interface
npm install -g webcrack
Examples:
webcrack input.js
webcrack input.js > output.js
webcrack bundle.js -o output-dir
API
npm install webcrack
Examples:
import fs from 'fs';
import { webcrack } from 'webcrack';
const input = fs.readFileSync('bundle.js', 'utf8');
const result = await webcrack(input);
console.log(result.code);
console.log(result.bundle);
await result.save('output-dir');