blackmiaool / Decent Messup
Mess up js code in a different way
Stars: ✭ 84
Programming Languages
javascript
184084 projects - #8 most used programming language
js
455 projects
Projects that are alternatives of or similar to Decent Messup
Trunk
Build, bundle & ship your Rust WASM application to the web.
Stars: ✭ 378 (+350%)
Mutual labels: build-tool, compiler
Parcel
The zero configuration build tool for the web. 📦🚀
Stars: ✭ 39,670 (+47126.19%)
Mutual labels: build-tool, compiler
Fast
Find in AST - Search and refactor code directly in Abstract Syntax Tree as you do with grep for strings
Stars: ✭ 194 (+130.95%)
Mutual labels: compiler, syntax-tree
Webpack
A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
Stars: ✭ 60,034 (+71369.05%)
Mutual labels: build-tool, compiler
Instapack
All-in-one TypeScript and Sass compiler for web applications! 📦 🚀
Stars: ✭ 131 (+55.95%)
Mutual labels: build-tool, compiler
Ykit
基于 Webpack 的灵活快速的打包工具,帮助稳定高效构建现代 JavaScript 应用。
Stars: ✭ 375 (+346.43%)
Mutual labels: build-tool, compiler
Packem
📦⚡ A precompiled JavaScript module bundler
Stars: ✭ 586 (+597.62%)
Mutual labels: build-tool, compiler
Delta
Programming language focused on performance and productivity
Stars: ✭ 77 (-8.33%)
Mutual labels: compiler
Typenovel
A simple markup language to write novel with types.
Stars: ✭ 80 (-4.76%)
Mutual labels: compiler
Ts Transform Css Modules
Extract css class names from required css module files for TypeScript
Stars: ✭ 75 (-10.71%)
Mutual labels: compiler
Projectbuilder
A tool for easy automating and customizing build process for Unity.
Stars: ✭ 80 (-4.76%)
Mutual labels: build-tool
Typhon
Snakes on rbx-head. A Python implementation for the Rubinius VM
Stars: ✭ 82 (-2.38%)
Mutual labels: compiler
Zig
General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Stars: ✭ 11,555 (+13655.95%)
Mutual labels: compiler
Spvgentwo
SpvGenTwo is a SPIR-V building and parsing library written in plain C++17 without any dependencies. No STL or other 3rd-Party library needed.
Stars: ✭ 74 (-11.9%)
Mutual labels: compiler
Decent Mess Up
Want to understand my js? No way!
Demo
Input:
const str="abc";
function func(){
const obj={};
obj.property={
key1:'value1',
'key2':str,
['key'+3]:'value3'
}
console.log(obj);
}
func();
Output:
const _a = 'vcb3aotkleyr21ugp';
const _b = 'bcktuovea2grp1y3l';
const _c = 'yecauop3rkbltg2v1';
const str = _a[4] + _b[0] + _a[1];
function func() {
const _a2 = _b;
const _b2 = _a;
const _c2 = _c;
const obj = {};
obj[_a2[12] + _c2[8] + _c2[5] + _a2[12] + _b2[9] + _c2[8] + _b2[6] + _a2[14]] = {
[_b2[7] + _b2[9] + _a2[14] + _b2[13]]: _c2[15] + _c2[3] + _a2[16] + _b2[14] + _c2[1] + _a2[13],
[_a2[2] + _c2[1] + _b2[10] + _a2[9]]: str,
[_c2[9] + _a2[7] + _a2[14] + 3]: _c2[15] + _c2[3] + _c2[11] + _b2[14] + _a2[7] + _a2[15]
};
console[_a2[16] + _c2[5] + _b2[15]](obj);
}
func();
Install
npm i -D decent-messup
Usage
Use it before babel and uglifying. Using it with uglifier is highly recommended.
const messup=require('decent-messup');
messup(yourcode[,options]);
Use with Webpack
module: {
loaders: [{
test: /\.jsx?$/,
loader: 'decent-messup/loader',
query: {
headCnt:5,
es6:true
},
},{
test: /\.jsx?$/,
loader: 'babel-loader',
query: {
presets: ['latest', 'stage-0'],
plugins: []
},
}]
},
Use with Gulp
const transform = require('gulp-transform');
const messup = require('decent-messup');
gulp.task('quadruple', function() {
return gulp.src('src/*.js')
.pipe(transform('utf8', code => messup(code,{headCnt:5,es6:true})))
.pipe(gulp.dest('dist'));
});
Options
The default options are:
{
headCnt: 3,
es6:false
}
headCnt
The count of string variables in each function scope.
headCnt=1:
var _a = '31olg2';
console[_a[3] + _a[2] + _a[4]](_a[1] + _a[5] + _a[0]);
headCnt=3:
var _a = 'l1go23';
var _b = '13gol2';
var _c = '23og1l';
console[_b[4] + _b[3] + _b[2]](_b[0] + _b[5] + _b[1]);
es6
Indicates if it should output es6 code.
Input:
a={b:'c'}
es6=false:
var _a = 'c';
var _b = 'c';
var _c = 'c';
a = { b: _c[0] };
es6=true:
const _a = 'cb';
const _b = 'bc';
const _c = 'bc';
a = { [_b[0]]: _b[1] };
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].