# javascript-obfuscator/javascript-obfuscator

A powerful obfuscator for JavaScript and Node.js

Repository: https://github.com/javascript-obfuscator/javascript-obfuscator
Canonical: https://ross.abutalabs.com/products/javascript-obfuscator
Homepage: https://obfuscator.io
Language: TypeScript
License: BSD-2-Clause
License Family: permissive
Topics: javascript-obfuscator, obfuscation, uglify, javascript, protection, obfuscate, js-obfuscator, obfuscator, mangle, cryptography, string, encoding, literal, security, browser, flow, flattening, control-flow, typescript, nodejs
Last push: 2026-08-23T05:17:44+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 99, longevity 100
- inputs: {"age_days": 3768, "days_push": 10, "days_rel": 10, "gap_med": 4.0, "n_releases_24m": 19}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 16218, forks 1737 (observed 2026-08-28T04:11:14.940138+00:00)

## What it is
A powerful open-source JavaScript and Node.js obfuscator that transforms readable source code into hard-to-reverse-engineer output using identifier renaming, string array encoding, control flow flattening, dead code injection, and self-defending transforms. A companion commercial service (obfuscator.io) adds VM-based bytecode obfuscation with anti-LLM defenses on top of the free package.

## Use cases
- obfuscate javascript source code
- protect proprietary js algorithms from reverse engineering
- mangle variable names and encode strings in a nodejs build
- flatten control flow to hinder static analysis
- protect client-side licensing logic
- obfuscate code in a webpack or cli build step

## When to choose
- you need free, configurable JavaScript obfuscation for browser or Node.js code
- you want identifier renaming, string array encoding, and control flow flattening in an npm pipeline
- you need a CLI or Node API to obfuscate files as part of a build

## When to avoid
- you expect obfuscation to protect secrets or API keys - it is not encryption
- you need VM bytecode virtualization, which is only in the paid obfuscator.io service
- you need minification or tree-shaking - use a bundler like terser/esbuild instead
- obfuscating vendor libraries or performance-critical hot paths

## Facets
- artifact type: library
- maturity: active
- function: security, compiler, developer-tools
- domain: security, web-development, reverse-engineering
- platform: browser, cross-platform, cli
- tags: obfuscation, javascript-obfuscator, code-protection, control-flow-flattening, string-encoding, anti-reverse-engineering, typescript, javascript, nodejs

## Member repositories
- javascript-obfuscator/javascript-obfuscator (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:14.940138+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:05:11.321183+00:00, confidence not recorded.
  - readme: https://github.com/javascript-obfuscator/javascript-obfuscator (fetched 2026-08-28T04:11:14.940138+00:00, sha 25aca346df8a)
  - homepage: https://obfuscator.io (fetched 2026-08-29T08:03:12.028336+00:00, sha 8125832c5152)
  - site_page: https://obfuscator.io/docs/getting-started (fetched 2026-08-29T08:03:12.033709+00:00, sha 27bc633fe2ad)
  - site_page: https://obfuscator.io/docs/vm-obfuscation (fetched 2026-08-29T08:03:12.035864+00:00, sha 4ef891b21e74)
  - site_page: https://obfuscator.io/docs/vm-obfuscation/how-it-works (fetched 2026-08-29T08:03:12.037705+00:00, sha 54047b582c32)
  - site_page: https://obfuscator.io/docs/recipes/runtime-errors (fetched 2026-08-29T08:03:12.039464+00:00, sha c15b899a954d)
  - site_page: https://obfuscator.io/docs/options (fetched 2026-08-29T08:03:12.041395+00:00, sha 5dede5869c83)
  - site_page: https://obfuscator.io/docs/recipes/best-practices (fetched 2026-08-29T08:03:12.044780+00:00, sha a9ffe9a27b73)
  - site_page: https://obfuscator.io/pricing (fetched 2026-08-29T08:03:12.031713+00:00, sha 759252198f48)
- Data as of 2026-08-30T08:39:29.467469+00:00.
