Drag/drop isn’t really available directly in LiveView so you would need some JS on the front end to handle those drawing interactions, but you could potentially push updates from a graphical widget via
pushEvent almost continuously to record drawing state changes on the server (if that was appropriate), and the
handleEvent callback to receive server state updates (or initial state for the initial render). Also, if you have “form” type information to record against each edge & node, it would be straightforward to manage that using a liveview.
If you are wanting to display server side updates of execution progressing for a business process this would be a reasonably nice model - probably easier than wiring up channels into React or Vue.