Skip to content

A JavaScript port of the Procyon decompiler.

License

MIT, Apache-2.0 licenses found

Licenses found

MIT
LICENSE
Apache-2.0
LICENSE-PROCYON
Notifications You must be signed in to change notification settings

run-slicer/procyon

Repository files navigation

procyon

A JavaScript port of the Procyon decompiler.

Example

const fs = require("fs");
const { decompile } = require("./procyon.js"); // get it from the dist/ directory or jsDelivr

const data = fs.readFileSync("./your/package/HelloWorld.class"); // read a class file
console.log(await decompile("your/package/HelloWorld", {
    source: async (name) => {
        /* provide classes for analysis here, including the one you want to decompile */

        console.log(name); /* internal name, e.g. java/lang/Object */
        return name === "your/package/HelloWorld" ? data : null /* class not available */;
    },
    options: {
        /* see https://github.com/run-slicer/procyon/blob/main/src/main/java/run/slicer/procyon/impl/ProcyonOptions.java */
    },
}));

Or see the browser-based proof-of-concept in the docs directory.

Licensing

The supporting code for this project is licensed under the MIT License. The Procyon decompiler is licensed under the Apache License 2.0.

This project is not affiliated with, maintained or endorsed by the Procyon project in any way. Do NOT report issues with this project to the Procyon issue tracker.

About

A JavaScript port of the Procyon decompiler.

Resources

License

MIT, Apache-2.0 licenses found

Licenses found

MIT
LICENSE
Apache-2.0
LICENSE-PROCYON

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published