Paraphrasing, to see if I understand: an “app” is a Composition of boxes. Some boxes contain previously-written code, some boxes contain newly-written code. New apps can be copy/pasted (“forked”) from previous apps. Correct?
FTR: You might wish to try a different UI - a hierarchy instead of an infinite canvas. Say, no more than 7+-2 boxes on any one diagram. Purple boxes are code, black boxes are containers. Purple boxes contain Lua (or whatever). Black boxes can contain purple boxes or more black boxes. You can drill down into black boxes to show their contents - if you want to, but you are not forced to do so. In my opinion, the UI problem with an infinite canvas is apparent at, say, 15:11. The editor shows a bunch of generic code on the left which, IMO, should simply be elided into a single black box. [“Black” boxes are something visually appealing and not distracting (maybe empty boxes with a faded, coloured border???) ]. My brain wants to ignore the boxes on the left, since I trust that that code already works and isn’t being tweaked for this particular fork. But, I can’t - visually - ignore the left side, since I am forced to look at it. I -can- pan to the right side thereby eliding the left side, but, at first it’s not obvious that I want to do that. I have to understand what’s there before I know what I want to look at and what I want to elide. The designer of a new app simply wants to copy/paste (“fork”) a previously working/tested app and to treat the previous code as a black box.