{"id":14007052,"url":"https://github.com/j4k0xb/webcrack","last_synced_at":"2025-05-14T02:07:38.570Z","repository":{"id":65660389,"uuid":"595340722","full_name":"j4k0xb/webcrack","owner":"j4k0xb","description":"Deobfuscate obfuscator.io, unminify and unpack bundled javascript","archived":false,"fork":false,"pushed_at":"2025-05-07T11:57:39.000Z","size":1955,"stargazers_count":1478,"open_issues_count":42,"forks_count":167,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-05-07T12:42:16.461Z","etag":null,"topics":["ast","browserify","bundle","debundle","deobfuscation","deobfuscator","extract","javascript","javascript-obfuscator","reverse-engineering","unminify","unpack","webpack"],"latest_commit_sha":null,"homepage":"https://webcrack.netlify.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/j4k0xb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-01-30T22:04:53.000Z","updated_at":"2025-05-07T09:29:12.000Z","dependencies_parsed_at":"2023-03-08T13:30:22.087Z","dependency_job_id":"22faf604-f898-4b28-b8f6-9185b4c1ba26","html_url":"https://github.com/j4k0xb/webcrack","commit_stats":null,"previous_names":[],"tags_count":48,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j4k0xb%2Fwebcrack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j4k0xb%2Fwebcrack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j4k0xb%2Fwebcrack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j4k0xb%2Fwebcrack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/j4k0xb","download_url":"https://codeload.github.com/j4k0xb/webcrack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254052872,"owners_count":22006717,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ast","browserify","bundle","debundle","deobfuscation","deobfuscator","extract","javascript","javascript-obfuscator","reverse-engineering","unminify","unpack","webpack"],"created_at":"2024-08-10T10:01:47.520Z","updated_at":"2025-05-14T02:07:33.551Z","avatar_url":"https://github.com/j4k0xb.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Uncategorized"],"sub_categories":["Uncategorized"],"readme":"[![Test](https://github.com/j4k0xb/webcrack/actions/workflows/ci.yml/badge.svg)](https://github.com/j4k0xb/webcrack/actions/workflows/test.yml)\n[![npm](https://img.shields.io/npm/v/webcrack)](https://www.npmjs.com/package/webcrack)\n[![license](https://img.shields.io/github/license/j4k0xb/webcrack)](https://github.com/j4k0xb/webcrack/blob/master/LICENSE)\n[![Netlify Status](https://api.netlify.com/api/v1/badges/ba64bf80-7053-4ed8-a282-d3762742c0dd/deploy-status)](https://app.netlify.com/sites/webcrack/deploys)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/55899582/231488871-e83fb827-1b25-4ec9-a326-b14244677e87.png\" width=\"200\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003ewebcrack\u003c/h1\u003e\n\nwebcrack is a tool for reverse engineering javascript.\nIt can deobfuscate [obfuscator.io](https://github.com/javascript-obfuscator/javascript-obfuscator), unminify,\ntranspile, and unpack [webpack](https://webpack.js.org/)/[browserify](https://browserify.org/),\nto resemble the original source code as much as possible.\n\nTry it in the [online playground](https://webcrack.netlify.app/) or view the [documentation](https://webcrack.netlify.app/docs).\n\n- 🚀 **Performance** - Various optimizations to make it fast\n- 🛡️ **Safety** - Considers variable references and scope\n- 🔬 **Auto-detection** - Finds code patterns without needing a config\n- ✍🏻 **Readability** - Removes obfuscator/bundler artifacts\n- ⌨️ **TypeScript** - All code is written in TypeScript\n- 🧪 **Tests** - To make sure nothing breaks\n\n## Command Line Interface\n\n```bash\nnpm install -g webcrack\n```\n\nExamples:\n\n```bash\nwebcrack input.js\nwebcrack input.js \u003e output.js\nwebcrack bundle.js -o output-dir\n```\n\n## API\n\n```bash\nnpm install webcrack\n```\n\nExamples:\n\n```js\nimport fs from 'fs';\nimport { webcrack } from 'webcrack';\n\nconst input = fs.readFileSync('bundle.js', 'utf8');\n\nconst result = await webcrack(input);\nconsole.log(result.code);\nconsole.log(result.bundle);\nawait result.save('output-dir');\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj4k0xb%2Fwebcrack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fj4k0xb%2Fwebcrack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj4k0xb%2Fwebcrack/lists"}