Looks very good, the only one major thing I would suggest you is pause the graph once it’s idle for some second with out any user interaction.
A living graph would eat up some process and battery(power) and it’s not friendly on mobile devices.
It’s also not responsive, I know making this volume of data for visualization on a small screen is hard, but had to say.
Also suggest you implement zooming, and four basic arrows to help user control and move the graph with them
An option to hide all other nodes, except the selected node and its 1 level child sounds nice.
Overall, nice data vis work dude!
Keep goin on great work, happy programming