https://github.com/kieler/elkjs works well for auto layout.