Javascript library for building a flowchart application

I need to realize a web interface with drag and drop where the user needs to create a flowchart by adding blocks as rectangles and polygons connected one to the other in 1:1 and 1:n relationships.
A single object needs to have a text field where the user can add a description and he must be able to connect an object with another by adding a description to the connection.

I’m trying to understand which framework / library i have to use. I’ve seen JSPlumb that seems good for my job but i’ve also found D3 that is very very fancy even if it seems to be related to Data instead of UI creation. Could D3 be a good choice for my work?

  • How/when do event listeners get attached in d3.js?
  • Visualization data inserted in the webpage is not properly indented and not appearing at desired position
  • What does the “Other” category of records mean in Chrome Timeline profiling tool?
  • D3.js IE vs Chrome SVG not showing
  • D3 time parse returns null
  • How to add all but a few columns using javascript and d3
  • d3.js moving average with previous and next data values
  • D3.js scattergraph with large (>500,000) points? Clustering?
  • NVD3 Angular Directive callback firing too soon
  • Using d3 to create a density & value heatmap layer for leaflet
  • D3.js code in Reveal.js slide
  • How to divide a D3 selection into groups by using the selection.filter method in a loop