I don't object to merging the request, but I would object if the proposed solution is the accepted, sole, one.
Optionally preserve incoming cable connections when duplicating a node is a slightly different use-case though.
For me, there are two use cases.
Where I have a set of similar nodes that I want to create spawning from an existing connection. For this Bodysoulspirit's suggestion is a good one.
For the second case, which I find also common, I have some common single source of truth, for example an App Window node, which must necessarily send information to Mouse nodes, and any other node that wants to know about window size, that are spread far across the composition.
In this case, #where# I want to do the work, there is no existing receiver node. In practice, this would mean going and finding the receiving node, and duplicating it there. If a cable is hidden, this means unhiding, finding, and then re-hiding. And then dragging the duplicated node to where I actually want it.
This may sound pedantic, and I agree that for the size of Vuo files in the examples it may be. I cracked open the big .vuo file I'm working on, and if I'm reading it correctly, I've got 991 (almost a thousand) cables in there, although I don't care to count them. The .vuo file itself is 1880 lines.
I feel like the 🐘elephant in the room is Vuo's small customer base.
At the same time, I've been playing with Bubble.io for some web projects. I had initially wanted to make a little website that let people put their company logo automatically into a nice 3D Zoom background (not original idea, I know)
But the tools to do this are like, to quote Steve Jobs, baby software. Just doing the most basic compositing of images requires paid plugins, and the UI looks like the very first pass.
Agreed with Chris here on approach. I find colours very helpful as a way to label certain types of elements (For example, those controlling logic, or those with video going to the feed as opposed to the UI)
I also miss the QC style macro grouping. And to echo what Chris said, I find the current Vuo subcompositions have resulted in a broken composition due to me placing them in the wrong folder, or changing it somewhere and not knowing it would effect somewhere else. The general idea of a reusable node is good. But without managing dependencies (to use coding terminology), it's more liability than asset, to me.
Even with the QC approach, I often felt the desire to move the 'walls' around a bit. That is, continue to adjust just where the composition meets the sub-composition.
In my perfect world, I would imagine the ability to not only easily make a sub composition, but a one-click share to a public Vuo library. And that this library becomes a searchable one-click-insert flow. Figma does this with plugins, and I find it's a revolution.