Have you started looking into different layout patterns? For kavla.dev (my SQL canvas) I'm exploring sugiyama (https://en.wikipedia.org/wiki/Layered_graph_drawing)
I like it, but I feel like there might be something I'm missing