🎉Limited Time Offer
Get 88 Free Credits
Offer ends Mar 31
Advanced JavaScript Reverse Engineering & Deobfuscation Platform

AI-Driven Code Reconstruction
Restore Original Logic & Structure

jsunpack is a premier online JavaScript deobfuscator. Leveraging an AI-driven AST engine, it provides one-click restoration of Webpack, Vue, and React bundles. Automatically recover variable semantics and infer TypeScript types, transforming unreadable minified code into clean, auditable source.

Press Ctrl+D / Cmd+D to bookmark|
https://avatars.githubusercontent.com/u/50286783?v=4
https://avatars.githubusercontent.com/u/2120155?s=64&v=4
https://avatars.githubusercontent.com/u/25892025?u=eb198d464586e68abd5e6778ee581a475bbc5259&v=4&size=64
https://avatars.githubusercontent.com/u/23046078?v=4
https://avatars.githubusercontent.com/u/32786500?s=48&v=4
3,000+ developers using
Code Transformation Example
// Obfuscated code
function a(b,c){return d(b-371,c)}function d(a,b){var c=e();return d=function(f,g){f=f-125;var h=c[f];return h},d(a,b)}var e=function(){var f=["shift","1780730MHUkXj","2911410RJxLsf","push","1642FxhJRJ","4uQbILO","length","2114965nzBvJF","8723208ibdPnP","splice","slice","7198824QUFSxS","9qXSdRG","1337643UWRnXL","unshift","3132900AcxLsm"];return e=function(){return f},e()}(function(b,c){var f=a,g=b();while(!![]){try{var h=-parseInt(f(384))/1+parseInt(f(382))/2*(parseInt(f(376))/3)+parseInt(f(383))/4+-parseInt(f(377))/5+parseInt(f(380))/6+parseInt(f(379))/7*(-parseInt(f(378))/8)+parseInt(f(381))/9;if(h===c)break;else g[f(385)](g[f(382)]())}catch(i){g[f(385)](g[f(382)]())}}}(e,983952));
// Deobfuscated code
/**
 * Array manipulation utility function
 * @param array Array to manipulate
 * @param index Operation index
 * @returns Processed array
 */
function arrayManipulator<T>(
  array: T[],
  index: number
): T[] {
  // Check array length
  if (array.length === 0) {
    return array;
  }

  // Execute array operation
  if (index > 0) {
    array.push(array.shift()!);
  } else {
    array.unshift(array.pop()!);
  }

  return array.slice(0);
}

Code Transformation Showcase

See how our AI deobfuscator transforms minified, unreadable code into clean, structured, and auditable source with complete TypeScript definitions.

JS Code Restoration

Convert compressed, obfuscated, hard-to-read JS code into clear, structured code

Before (Obfuscated)
const a=function(){let b=!0;return function(c,d){const e=b?function(){if(d){const f=d.apply(c,arguments);return d=null,f}}:function(){};return b=!1,e}}(),c=a(this,function(){return c.toString().search("(((.+)+)+)+$").toString().constructor(c).search("(((.+)+)+)+$")});c();
After (Decompiled)
Optimized
/**
 * Create a function that executes only once
 * @param context Function context
 * @param callback Callback function
 * @returns Processed result
 */
const createOnceFunction = function() {
  // Mark if it's the first execution
  let isFirstTime = true;

  return function(context, callback) {
    // If it's the first execution, call the callback function
    const onceExecutor = isFirstTime
      ? function() {
          if (callback) {
            const result = callback.apply(context, arguments);
            // Clear reference to help garbage collection
            callback = null;
            return result;
          }
        }
      : function() {};

    // Set to not first time
    isFirstTime = false;
    return onceExecutor;
  };
}();

Ready to experience powerful code deobfuscation?

Try our AI deobfuscator now—completely free!

Long File Decompilation - Professional Grade

Beyond simple decompilation, our multi-Agent collaboration reconstructs obfuscated code into production-ready project architecture

Complete project engineering structure

Output Project Example

Reconstruct obfuscated code into complete project engineering

Project Structure

decompiled-project(5)
src(6)
assets(2)
components(4)
views(3)
utils(2)
App.vue
main.js
public(1)
package.json
README.md
vite.config.js

Click files to view code preview

Supported File Types

JavaScript
Multiple files
TypeScript
Complete types
Vue.js
Component-based
React
Hooks support
HTML/CSS
Style separation
Config Files
Auto-generated

Choose Decompilation Mode

Select the appropriate decompilation mode based on your needs

Free

Short Code Mode

Perfect for code snippets under 10KB, get clear decompilation results quickly
Pro

Long File Mode

Support files up to 5MB, reconstruct complete projects through multi-Agent collaboration

Long File Decompilation Workbench

Professional Mode

Upload files for multi-Agent collaborative processing and complete project reconstruction

Long File Decompilation Console

Drag file here

Or click to select file

Supported formats: .js, .jsx, .ts, .tsx
File size limit: 1KB - 5MB