All Projects â†’ Xmader â†’ retidy

Xmader / retidy

Licence: MIT license
Extract, unminify, and beautify ("retidy") each file from a webpack/parcel bundle (JavaScript reverse engineering)

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to retidy

Utinyripper
GUI and API library to work with Engine assets, serialized and bundle files
Stars: ✭ 1,871 (+6829.63%)
Mutual labels:  bundle, extract
Debundle
🗃 A javascript debundler. Takes a Browserify or Webpack bundle and recreates the initial, pre-bundled source.
Stars: ✭ 420 (+1455.56%)
Mutual labels:  bundle, ast
ScrapeM
A monadic web scraping library
Stars: ✭ 17 (-37.04%)
Mutual labels:  extract
astutils
Bare essentials for building abstract syntax trees, and skeleton classes for PLY lexers and parsers.
Stars: ✭ 13 (-51.85%)
Mutual labels:  ast
go-astilectron-bundler
Bundle your Astilectron app with ease
Stars: ✭ 117 (+333.33%)
Mutual labels:  bundle
laravel-mix-auto-extract
[DEPRECATED] Laravel Mix v2/3 plugin to auto extract vendor js
Stars: ✭ 26 (-3.7%)
Mutual labels:  extract
parcl
Gradle plugin for bundling your Java application for distribution on Windows, Mac and Linux
Stars: ✭ 52 (+92.59%)
Mutual labels:  bundle
about-Vue
📔 Vue æșç çš„æŽąèźšć’Œć­Šäč 
Stars: ✭ 56 (+107.41%)
Mutual labels:  ast
VreshTwilioBundle
A Symfony2 wrapper for the official SDK provided by Twilio.
Stars: ✭ 45 (+66.67%)
Mutual labels:  bundle
ninny-json
JSON typeclasses that know the difference between null and absent fields
Stars: ✭ 19 (-29.63%)
Mutual labels:  ast
KtwDatabaseMenuBundle
Symfony bundle for extending KnpMenu to store menu items in a database.
Stars: ✭ 12 (-55.56%)
Mutual labels:  bundle
vscode-blockman
VSCode extension to highlight nested code blocks
Stars: ✭ 233 (+762.96%)
Mutual labels:  ast
FCMBundle
A Bundle for Symfony projects to send notifications in mobile devices through Firebase Cloud Messaging API
Stars: ✭ 43 (+59.26%)
Mutual labels:  bundle
rector-nette
Rector upgrades rules for Nette
Stars: ✭ 16 (-40.74%)
Mutual labels:  ast
ast-grep
🔍 Like grep, but more powerful than you can possibly imagine
Stars: ✭ 14 (-48.15%)
Mutual labels:  ast
astravel
👟 Tiny and fast ESTree-compliant AST walker and modifier.
Stars: ✭ 38 (+40.74%)
Mutual labels:  ast
lexik-jose-bridge
An Encoder for the LexikJWTAuthenticationBundle that uses web-token/jwt-framework
Stars: ✭ 27 (+0%)
Mutual labels:  bundle
bundlemon
Monitor your bundle size
Stars: ✭ 53 (+96.3%)
Mutual labels:  bundle
kataw
An 100% spec compliant ES2022 JavaScript toolchain
Stars: ✭ 303 (+1022.22%)
Mutual labels:  ast
estree-to-babel
convert estree ast to babel
Stars: ✭ 23 (-14.81%)
Mutual labels:  ast

Retidy

GitHub stars npm npm downloads license

Extract, unminify, and beautify ("retidy") each file from a webpack/parcel bundle

⚠ No Unit Tests, may have unexpected side effects ⚠

Installation

npm install -g retidy

Usage

CLI

retidy \
    -i <bundle_file> \
    -o <out_dir> \
    -t <bundle_type> \
    -b <bundle_ast_reference>

see

retidy --help

API

import retidy from "retidy"

retidy(bundleCode[, options])
retidy(bundleCode: string, options?: Options): Promise<string[]>

If set options.writeFiles = true (by default), retidy will write extracted code files into the file system (under options.outDir directory, ./retidy-out/ by default).

Options

see src/options.ts

Example

import retidy from "retidy"
import fs from "fs"

const code = fs.readFileSync("path/to/webpack-bundle.js", "utf-8")

retidy(code, { type: "webpack", outDir: "./out/", bundleAstReferenceKeys: ["body", 0, "expression", "right"] })

License

MIT

Legal note

Some companies specify in their terms of service that their code cannot be "reverse engineered".
Hope you understand what you are doing so you don't break any agreements.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].