Reverse engineering JavaScript and CSS sources from sourcemaps
Install the shuji command line utility globally with npm.
Elevated privileges might be needed via sudo, depending on the platform. In most cases just:
npm install --global shujiPlease note that this tool requires the minimum Node.js
version to be 4.2.0, which is the Long Term Support (LTS) version.
The output of shuji --help pretty much covers all the options:
shuji - Reverse engineering JavaScript and CSS sources from sourcemaps
Usage: shuji [options] <file|directory>
-h, --help Help and usage instructions
-V, --version Version number
-v, --verbose Verbose output, will print which file is currently being processed
-o, --output-dir String Output directory - default: .
-M, --match String Regular expression for matching and filtering files - default: \.map$
-r, --recursive Recursively search matching files
Version 0.3.0Test files are generated with UglifyJS2 and
sass
by using files from the stretchy project,
with the following commands:
uglifyjs stretchy.js --compress --mangle \
-o stretchy.min.js --source-map stretchy.min.js.map
uglifyjs stretchy.js --compress --mangle \
-o stretchy.min.js --source-map stretchy-with-sources.min.js.map \
--source-map-include-sources
sass stretchy.scss:stretchy.css
sass stretchy.scss:stretchy.css --sourcemap=inlineUnit tests are written with tape and can be executed with npm test.
Code coverage is inspected with nyc and
can be executed with npm run coverage after running npm test.
Please make sure it is over 90% at all times.
"A Beginner's Guide to Open Source: The Best Advice for Making your First Contribution".
Also there is a blog post about "45 Github Issues Dos and Don’ts".
Linting is done with ESLint and can be executed with npm run lint.
There should be no errors appearing after any JavaScript file changes.
Please note that any features or changed will not be merged without working unit tests.
v0.3.1(2016-08-08)- Test also in Windows, at AppVeyor
v0.3.0(2016-07-07)- Start using shared ESLint configuration #1
- Test against Node.js v6
v0.2.0(2016-03-14)- Do not overwrite existing files, instead skip them
v0.1.0(2016-02-12)- Initial release which can make it happen
Copyright (c) Juga Paazmaya paazmaya@yahoo.com
Licensed under the MIT license.