We thought of everything for you: http://gojs.net
~~~
I think this is an interesting side topic to get into: my above pitch can be generalized for nearly any library. Fundamentally, selling a library is about selling man-hours. Either a programming team does everything themselves, or they do some of it get one or more libraries and pay some dollar cost and learning curve cost in return for getting literal packaged man-hours, in the form of the thought and features put into the library.
So my product, like all libraries, is there for people who don't want to re-re-re-re-reinvent (and importantly re-re-re-re-retest) Diagramming concepts like node-link relationships, layouts, grouping, undo managers, performant rendering, etc. Like any library, people are buying the man-hours we put in to perfecting a set of things, so they can get on with building the more nuanced parts of their app without running in to their own set of layout/undo-manager/what-have-you bugs.