I have a main entity represented by a node which has a number of dependencies (downstream) it depends on, as well as a number of node entities (upstream) that depend on it.
I would like to generate a graph with the main entity in the center, the upstream nodes on the left-hand side with arrow links pointing to it, and the downstream nodes on the right-hand side with arrow links from the main node pointing to these nodes.
Assuming you want something to generate an SVG for you, I would recommend to look into Mermaid or Viz.js. If you need more control, you could take a look at ELK instead which only generates the layout data.