google / google/bindiff

Rebuild the UI to use web technologies for easier embedding

Open
#16 0 comments 5 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
3.2k
Forks
240
PR merge metrics
No merged PRs in 30d

Description

**Is your feature request related to a problem? Please describe.**
* The Java UI is dated and requires a proprietary graph visualization libray
* BinDiff native plugins for IDA Pro and binary Ninja cannot embedd a high-quality graph view
* The current workflow with the standalone UI is cumbersome and few people actually use "BinDiff Workspaces".

**Describe the solution you'd like**
* Implement a UI using Typescript and web technologies. D3.js with the DAG layouter should be able to support the flow graph use cases and render to Canvas.
* Have the `bindiff` executable launch a server for this and either embed a web view in the disassemblers or show the browser.

**Describe alternatives you've considered**
* Gephi
* Extracting the graphing library from Ghidra
* Implementing a new desktop UI in Qt

**Additional context**
This should eventually become a "GitHub Project".

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.