Java decompiler
Select a class file
jsdv1.0.3

From bytecode to readable Java

Open a class or archive, then explore its source. No installation or upload required.

.class / .jar / .war / .zip
jsd.min.js ESM · MIT
Minified JS ~238 KB 0.238 MB
With gzip ~72 KB 0.072 MB
Runtime dependencies 0 No WebAssembly

One JS file is all you need to decompile .class files in Node.js or your browser.

Source on GitHub github.com/jar-analyzer/jsd

Start building with jsd

npm v1.0.3

Add the same lightweight library to your browser or Node.js project.

Save as index.html and serve over HTTP. Select a .class file to see its source.

index.html
<input type="file" accept=".class" />
<pre id="source"></pre>
<script type="module">
  import { decompileClassFile } from
    'https://cdn.jsdelivr.net/npm/@jar-analyzer/jsd@1.0.3/dist/jsd.min.js';

  document.querySelector('input').onchange = async (event) => {
    const file = event.target.files[0];
    if (!file) return;

    const bytes = new Uint8Array(await file.arrayBuffer());
    document.getElementById('source').textContent =
      decompileClassFile(bytes).source;
  };
</script>