Skip to content

gal-zemach/BuildGraphVisualizer

Repository files navigation

BuildGraph Visualizer

A simple Avalonia-based tool to visualize BuildGraph XML files, displaying lanes per agent and node chains, with future support for macros and editing.

diagram

Current Status (June 2025)

  • Streaming high-level XML parser (Nodes/Aggregates/Macros) - Done
  • Deterministic IDs + edge builder - Done
  • GraphViz export (CLI) - Done
  • Avalonia lane canvas - In progress
  • Zoom/pan canvas - Planned

Roadmap

MVP

  • Load a BuildGraph XML and parse into a Graph object
  • Display lanes for each agent
  • Show nodes as rectangular items on a zoomable, pannable canvas
  • Highlight aggregates and basic node types

Extended

  • Add parsing of inner-node variables/commands (Property/Compile/Label)
  • Expand properties and macros up-front
  • Detect and log invalid links or circular dependencies
  • Live search & node highlight
  • Search and filter nodes
  • Prettier layout

Quick Start

git clone https://github.com/gal-zemach/BuildGraphVisualizer.git
cd BuildGraphVisualizer
dotnet run --project CliDot Sample/BuildEditorAndTools.xml Sample/BuildEditorAndTools_graph.dot
dot -Tpng Sample/BuildEditorAndTools_graph.dot -o Sample/BuildEditorAndTools_graph.png     # requires graphviz

License

This project is licensed under the MIT License. See LICENSE for details.