Graph

Force-directed node/edge graph with draggable nodes, pan/zoom, hover-highlighting, and keyboard navigation.

Installation

npx dafink-ui add graph

Requires: d3-force, @types/d3-force

Demo

Props

NameTypeDefaultDescription
nodesGraphNode[]-Required. Array of { id, label, group? } objects.
edgesGraphEdge[]-Required. Array of { source, target } objects referencing node ids.
widthnumber600SVG width in pixels.
heightnumber400SVG height in pixels.
classNamestring""Additional classes on the root wrapper div.
onNodeSelect(node: GraphNode) => void-Called when a node is selected via click or keyboard Enter/Space.