ContainerLab support

Drop any *.clab.yaml in the editor. NetWeave detects the topology: root key and parses nodes / links into the same internal graph model used for native topologies, so all rendering, layout and export features apply identically.

Kind → stencil mapping

NetWeave uses the ContainerLab kind (and, as a fallback, the image string) to pick a stencil. The current mapping:

Anything unrecognised falls back to router. PRs welcome for additional kinds — the mapping lives in src/lib/yaml/parse.ts.

Link parsing

ContainerLab links have the form ["nodeA:ifA", "nodeB:ifB"]. NetWeave splits on :, seeds the referenced interfaces on each node (so the canvas has somewhere to attach handles), and labels the edge with the interface names.

What is not used

topology.kinds and topology.defaults are parsed but not rendered — they don't affect the diagram. Management IPs (mgmt_ipv4, mgmt_ipv6) are surfaced on the node as a mgmt0 interface so you can see them at a glance.