weird.js
weird.js is a javascript obfuscation compiler written in C, it produces working JavaScript using characters [()]!+-/*=>.
Building
make
Usage
./weird [OPTIONS] in.js out.js
Use the `-m` flag to disable wrapping the final code in an eval statement.
How does this work?
weird.js uses type coercion to produce working, yet unreadable javascript.
I recommed checking out this video by Low Level Javascript if you're interested in learning more.
Runtimes
Node.js
To use require you must define it, like so:
const require = new Function("var require = global.require || global.process.mainModule.constructor._load; return require")();
Support
Support for weird.js is available on IRC
On this page
Languages
C96.1%JavaScript2.5%Makefile1.4%
Contributors
GNU General Public License v2.0
Created July 26, 2022
Updated August 16, 2024