My kid and I have been playing with this for a couple hours. It's awesome. I have a couple of UI suggestions that would slickify certain aspects of it:

  1. have a simplified representation of very short "simple" connections where adjacent nodes are wired together. This would make it easier to read some of the denser examples, and clean up cases where e.g. you just wire a knob or a const directly to a node's input and nothing else.

  2. physical grouping would be a huge win for managing layouts

  3. a sort of automatic combo of 1 and 2 would also be neat, where e.g. these closely-bound nodes like an operation with a knob stuck to it could automatically follow each other if you grabbed one and moved it.

Years ago (not sure if still true since I haven't used it in years), Adobe Illustrator had this nifty behavior where objects that were nested in complex groups within groups could be used to progressively select specific subsets of their groups by holding a modifier key. Modifier-click an object and that single object was selected. Modifier click again and it selects all of its groups' siblings. Once more and it jumps up to the parent group and all of its siblings. Etc until all the objects in the group are selected (which would have been the default un-modifier-ed select behavior. Not only is it a pretty useful way to select progressively larger portions of your group, it's a little UX sugar that lets you refresh your memory on what the group structure is.