Skip to content

cheeterLee/graph-decomposition-visualizer

Repository files navigation

Treewidth Decomposition Visualizer

Powered by Cloudflare Workers on

https://graph-decomp-visualizer.cheeterlee.workers.dev/

Overview

The tool provides a web-based interface for running the treewidth decomposition algorithm, helping users explore insights between the decomposed tree and the original graph through interactive visualizations.

Core Stack

Stack

Remix, TypeScript, WebAssembly, Cpp, Redux, D3.js

Core Modules

  • Svg Editor: A graph editor built with SVG and D3.js that lets users create a graph from scratch or load one from uploaded or sample files. It supports gestures such as drag-and-drop, zooming, panning, and vertex/edge highlighting.

  • Algorithm Runner: An algorithm runner that executes the treewidth decomposition algorithm, compiled in WebAssembly format, in a Web Worker.

  • Canvas Display: A Canvas and D3.js based widget that displays the result of treewidth decomposition as a force-simulated graph or raw text, with optional download support. It supports click and group highlighting, allowing users to compare highlighted portions between the original graph and its decomposed version.

Feature Snapshots

demo3 Graph Editor

demo1 Vertex/Edge/Bag highlighting

demo2 Groups highlighting

© Ziyi Li, University of Leeds, 2025

About

D3.js & WebAssembly based treewidth decomposition algorithm visualizer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published