awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
javascript-obfuscator avatar

javascript-obfuscator/javascript-obfuscator

0
View on GitHub↗
16,129 stars·1,734 forks·TypeScript·BSD-2-Clause·14 viewsobfuscator.io↗

Javascript Obfuscator

This project is a JavaScript code protection tool designed to transform source code into a version that is difficult for humans to read. Its primary purpose is to protect intellectual property and prevent reverse engineering by altering the original program logic.

The tool employs several advanced techniques to hinder analysis, including control flow flattening and the injection of dead code. It can compile functions into custom bytecode executed by an embedded virtual machine and encrypt string literals to prevent static analysis of text.

Additional capabilities include anti-debugging mechanisms that freeze developer tools and self-defending code that crashes if the source is beautified or modified. The tool also provides domain-locking to restrict execution to specific authorized environments and supports the synchronization of identifiers across multiple files using a shared cache.

Users can manage these processes through a command line interface, utilize pre-defined security presets, and generate source maps for production debugging.

Features

  • JavaScript Obfuscators - Provides a CLI to automate the transformation of JavaScript source code using various security presets.
  • Code Obfuscators - Provides a professional tool to transform source code into a complex, unreadable format to prevent reverse engineering.
  • JavaScript AST Transformations - Performs structural modifications of JavaScript source code using abstract syntax tree transformations.
  • Dead Code Injection - Inserts non-functional code segments into the AST to confuse static analysis tools.
  • Identifier Mangling - Replaces variable and function names with mangled or hexadecimal identifiers to hide original logic.
  • String Literal Obfuscation - Hides constant string values by replacing them with runtime-resolved decryption expressions.
  • Bytecode Virtual Machines - Compiles functions into custom bytecode executed by an embedded virtual machine to hide logic.
  • Control Flow Flattening - Restructures program execution paths into a central switch statement to obscure original logic.
  • Anti-Debugging Implementations - Implements logic to detect attached debuggers and trigger crashes to prevent code analysis.
  • String Literal Obfuscation - Extracts strings into a special array and encodes them to prevent static analysis of text.
  • Code Tamper Protections - Inject defenses that freeze developer tools and break execution if the source is beautified or hooked.
  • Debugger Detection - Injects protections that detect attached debuggers and freeze browser developer tools.
  • Reverse Engineering Prevention - Applies techniques like control flow flattening and dead code injection to hinder the analysis of program logic.
  • Self-Defending Code - Inserts mechanisms that crash the application if the source code is beautified or modified.
  • Source Code Protection - Transforms JavaScript source code into a version that is difficult for humans to read to protect intellectual property.
  • Self-Defending Code - Injects self-defending mechanisms that cause the code to crash if the source is formatted or modified.
  • File Management CLI Tools - Provides CLI tools for recursively traversing and processing files and directories for obfuscation.
  • Cross-File Identifier Synchronization - Uses a naming cache and unique prefixes to ensure consistent identifier replacement across multiple files.
  • Exclusion Lists - Exclude chosen variable or function names from obfuscation to maintain compatibility with external APIs.
  • HTML - Obfuscates JavaScript inside HTML script tags while preserving the surrounding HTML structure.
  • Domain Access Restrictions - Restricts code execution to authorized hostnames or domains to prevent unauthorized usage.
  • Domain Locking - Injects runtime checks that validate the current window location against authorized domains.
  • SDK License Enforcers - Restricts the execution of JavaScript to specific domains or environments to prevent unauthorized usage.
  • Numeric Obfuscations - Replace static numeric values with complex mathematical expressions that evaluate to the original number.
  • Batch Obfuscation - Processes multiple source files simultaneously while maintaining consistent identifier mapping through a shared cache.
  • Identifier Mapping Caches - Maintains a mapping of original names to obfuscated versions across multiple files to ensure consistency.
  • Batch Source Processing - Processes multiple source files simultaneously while maintaining consistent identifier mapping through a shared cache.
  • Code Optimization - Advanced obfuscation for JavaScript and Node.js.
  • Obfuscation - Obfuscator for JavaScript.

Star history

Star history chart for javascript-obfuscator/javascript-obfuscatorStar history chart for javascript-obfuscator/javascript-obfuscator

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does javascript-obfuscator/javascript-obfuscator do?

This project is a JavaScript code protection tool designed to transform source code into a version that is difficult for humans to read. Its primary purpose is to protect intellectual property and prevent reverse engineering by altering the original program logic.

What are the main features of javascript-obfuscator/javascript-obfuscator?

The main features of javascript-obfuscator/javascript-obfuscator are: JavaScript Obfuscators, Code Obfuscators, JavaScript AST Transformations, Dead Code Injection, Identifier Mangling, String Literal Obfuscation, Bytecode Virtual Machines, Control Flow Flattening.

What are some open-source alternatives to javascript-obfuscator/javascript-obfuscator?

Open-source alternatives to javascript-obfuscator/javascript-obfuscator include: obfuscator-llvm/obfuscator — This project is an LLVM obfuscator compiler and machine code obfuscator designed to protect C++ applications from… burrowers/garble — Garble is an obfuscation tool for Go binaries. It transforms compiled Go programs by hashing identifiers, package… obfuscar/obfuscar — Obfuscar is a .NET assembly obfuscator and managed code protector designed to prevent reverse engineering of compiled… lordnoteworthy/al-khaser — Al-Khaser is a research project focused on the development of anti-analysis and evasion techniques to resist reverse… zeusssz/hercules-obfuscator — Hercules is a security tool designed to protect Lua source code from reverse engineering and unauthorized analysis. It… alex8088/electron-vite — electron-vite is a build system and multi-process bundle orchestrator that uses Vite to compile and bundle the main,…

Open-source alternatives to Javascript Obfuscator

Similar open-source projects, ranked by how many features they share with Javascript Obfuscator.
  • obfuscator-llvm/obfuscatorobfuscator-llvm avatar

    obfuscator-llvm/obfuscator

    4,359View on GitHub↗

    This project is an LLVM obfuscator compiler and machine code obfuscator designed to protect C++ applications from decompilation and static analysis. It functions as an LLVM pass framework that transforms intermediate representation into complex machine code to prevent the reverse engineering of program logic. The tool implements binary security hardening and anti-reverse engineering measures to protect intellectual property. It achieves this by modifying the compilation pipeline to hide original control flow and data structures. The transformation process includes control-flow flattening, th

    View on GitHub↗4,359
  • burrowers/garbleburrowers avatar

    burrowers/garble

    5,308View on GitHub↗

    Garble is an obfuscation tool for Go binaries. It transforms compiled Go programs by hashing identifiers, package paths, and filenames into short, opaque strings, making reverse engineering more difficult. The tool produces reproducible results from identical source and a user-supplied seed, enabling verifiable builds. Obfuscation can be restricted to only those packages that match user-defined patterns, leaving other parts of the codebase untouched. Constant string literals in the binary are replaced with runtime-resolved expressions to hide their original content. The tool integrates direct

    Gobinarybuildcode-obfuscator
    View on GitHub↗5,308
  • obfuscar/obfuscarobfuscar avatar

    obfuscar/obfuscar

    3,007View on GitHub↗

    Obfuscar is a .NET assembly obfuscator and managed code protector designed to prevent reverse engineering of compiled binaries. It functions as a binary metadata compressor and security tool that renames symbols and encodes strings to protect intellectual property. The project distinguishes itself by altering the Common Intermediate Language structure and modifying assembly metadata tables to hide implementation details. It provides string-to-buffer encoding to prevent plain-text analysis of constants and includes a strong-name re-signing mechanism to ensure modified assemblies remain valid a

    C#c-sharpdotnetdotnet-framework
    View on GitHub↗3,007
  • lordnoteworthy/al-khaserLordNoteworthy avatar

    LordNoteworthy/al-khaser

    7,001View on GitHub↗

    Al-Khaser is a research project focused on the development of anti-analysis and evasion techniques to resist reverse engineering. It provides implementations for detecting and evading virtual machines, sandboxes, and debuggers to prevent software analysis. The project implements control flow obfuscation through anti-disassembly methods and utilizes dynamic API resolution to bypass static import tables. It further hinders forensic analysis by manipulating memory headers to prevent process dumps and utilizing remote code injection to execute logic in external processes. The capability surface

    C++
    View on GitHub↗7,001
  • See all 30 alternatives to Javascript Obfuscator→