# lelinhtinh/de4js

JavaScript Deobfuscator and Unpacker

Repository: https://github.com/lelinhtinh/de4js
Canonical: https://ross.abutalabs.com/products/de4js
Homepage: https://lelinhtinh.github.io/de4js/
Language: JavaScript
License: MIT
License Family: permissive
Topics: deobfuscator, deobfuscate, deobfuscation, unpacker, decode, javascript, online-tools, offline-app, javascript-deobfuscator
Archived: true
Last push: 2021-11-12T01:47:34+00:00

## Health v2 (maintenance only)
Score: 10/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 3268, "days_push": 1756, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: archived
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1580, forks 361 (observed 2026-08-28T04:05:06.856955+00:00)

## What it is
de4js is a web-based JavaScript deobfuscator and unpacker that transforms obfuscated code (Eval, Array, JSFuck, JJencode, AAencode, Packer, Obfuscator.IO, and more) back into readable source. It works fully offline, includes a code beautifier with syntax highlighting, and can be self-hosted via Docker or Jekyll.

## Use cases
- deobfuscate obfuscated javascript code
- unpack jsfuck or jjencode encoded scripts
- decode obfuscator.io output back to readable js
- analyze malicious javascript from a url or local file
- beautify and format minified javascript
- self-host an offline javascript deobfuscation tool

## When to choose
- you need to reverse obfuscated or packed JavaScript into readable source
- you want an offline-capable tool that never sends code to a server
- you encounter common obfuscation schemes like JSFuck, JJencode, AAencode, or Packer
- you want a self-hosted web UI with beautifying and syntax highlighting

## When to avoid
- you need deobfuscation of heavily modern ES6+ obfuscation beyond what Obfuscator.IO unpacking covers
- you want a command-line or programmatic API rather than a browser interface
- you need the 'Unreadable' JS Nice-powered renaming without installing the helper UserScript
- you require actively maintained tooling - the latest release dates to 2021

## Facets
- artifact type: application
- maturity: maintenance
- function: reverse-engineering, security, developer-tools, parser
- domain: security, reverse-engineering, web-development, developer-tools
- platform: browser, self-hosted, cross-platform
- tags: deobfuscator, unpacker, javascript, jsfuck, obfuscator-io, offline-tool, code-beautifier, static-analysis, web-server, docker

## Member repositories
- lelinhtinh/de4js (main) score 10

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:06.856955+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-30T03:56:36.924578+00:00, confidence not recorded.
  - readme: https://github.com/lelinhtinh/de4js (fetched 2026-08-28T04:05:06.856955+00:00, sha 6f1a9e0f2a66)
  - homepage: https://lelinhtinh.github.io/de4js/ (fetched 2026-08-29T11:27:05.056127+00:00, sha 0ccbd5ca01d9)
  - registry_npm: https://registry.npmjs.org/de4js (fetched 2026-08-29T11:27:05.065185+00:00, sha b6d806e2d266)
- Data as of 2026-08-30T08:39:29.467469+00:00.
