Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.js-confuser.com/llms.txt

Use this file to discover all available pages before exploring further.

JS-Confuser exposes a simple API that allows you to obfuscate your code with just a few lines of code.

Example

The provided code example will obfuscate the file input.js and write the output to a file named output.js.
import JSConfuser from "js-confuser";
import { readFileSync, writeFileSync } from "fs";

// Read input code
const sourceCode = readFileSync("input.js", "utf8");
const options = {
  target: "node",
  preset: "medium",
};

JSConfuser.obfuscate(sourceCode, options)
  .then((result) => {
    // Write output code
    writeFileSync("output.js", result.code);
  })
  .catch((err) => {
    // Error occurred
    console.error(err);
  });

API Methods

JSConfuser.obfuscate(sourceCode, options)
Obfuscates source code. Returns a Promise that resolves to an object of the obfuscated result.
ParameterTypeDescription
sourceCodestringThe JavaScript code to be obfuscated.
optionsobjectThe obfuscator settings.
Return Type: Promise
PropertyTypeDescription
codestringThe obfuscated code.

JSConfuser.obfuscateAST(AST, options)
Obfuscates a Babel AST. Returns a Promise. Note: Mutates the object.
ParameterTypeDescription
ASTobjectThe Babel AST. This object will be mutated.
optionsobjectThe obfuscator settings.

API Internals
JSConfuser.presets
The internal object where JS-Confuser presets are stored. The presets ("low", "medium", and "high") can be accessed through: JSConfuser.presets["high"]