# JavaScript graph & network visualization libraries

> Node-link diagrams for networks, dependency graphs and knowledge graphs. 15 tools, ranked by GitHub stars.

Libraries for drawing node-link diagrams: social networks, dependency graphs, knowledge graphs, flowcharts and other relational data. Most pair a renderer with layout algorithms (force-directed, hierarchical, circular) and interactions such as dragging, zooming and selecting nodes.

Graph size decides a lot: Sigma.js renders with WebGL to keep large graphs interactive, Cytoscape.js combines visualization with graph analysis, and diagramming libraries focus on editing and constraint-based layout. For the graph data model and algorithms on their own, see Graphology.

| # | Tool | GitHub stars | Commits (12 mo) | License | Description |
|---:|---|---:|---:|---|---|
| 1 | [xyflow](https://awesomedataviz.com/tools/xyflow/) | 38,582 | 510 | MIT | React Flow and Svelte Flow: libraries for building node-based editors, flow charts and interactive diagrams. |
| 2 | [G6](https://awesomedataviz.com/tools/g6/) | 12,323 | 44 | MIT | Graph visualization library powered by Javascript & Typescript, maintained by Alibaba |
| 3 | [Sigma.js](https://awesomedataviz.com/tools/sigma-js/) | 12,180 | 6 | MIT | JavaScript library dedicated to graph drawing. |
| 4 | [Cytoscape.js](https://awesomedataviz.com/tools/cytoscape-js/) | 11,232 | 185 | MIT | JavaScript library for graph drawing maintained by Cytoscape core developers. |
| 5 | [Vue Flow](https://awesomedataviz.com/tools/vue-flow/) | 6,888 | 22 | MIT | Flowchart and node-based graph component for Vue 3. |
| 6 | [X6](https://awesomedataviz.com/tools/x6/) | 6,716 | 116 | MIT | Diagramming library for DAGs, ER diagrams, flowcharts and other graph editors, maintained by Alibaba. |
| 7 | [3d-force-graph](https://awesomedataviz.com/tools/3d-force-graph/) | 6,433 | 9 | MIT | 3D force-directed graph component using Three.js/WebGL. |
| 8 | [dagre](https://awesomedataviz.com/tools/dagre/) | 5,814 | 110 | MIT | Directed graph layout library for JavaScript. |
| 9 | [JointJS](https://awesomedataviz.com/tools/jointjs/) | 5,393 | 151 | MPL-2.0 | SVG-based JavaScript diagramming library for interactive diagrams and graph editors. |
| 10 | [VivaGraph](https://awesomedataviz.com/tools/vivagraph/) | 3,862 | 1 | BSD-3-Clause | Graph drawing library for JavaScript. |
| 11 | [elkjs](https://awesomedataviz.com/tools/elkjs/) | 2,801 | 61 | EPL-2.0 OR GPL-3.0-or-later | Eclipse Layout Kernel (ELK) graph layout algorithms for JavaScript. |
| 12 | [Uber React Digraph](https://awesomedataviz.com/tools/uber-react-digraph/) | 2,644 | 0 | MIT | React.js based directed graph library maintained by UBER. |
| 13 | [Cola.js](https://awesomedataviz.com/tools/cola-js/) | 2,098 | 3 | MIT | A tool to create diagrams using constraint-based optimization techniques. Works with d3 and svg.js. |
| 14 | [diagram.js](https://awesomedataviz.com/tools/diagram-js/) | 1,926 | 268 | MIT | Javascript diagram library serving as the basis for camunda's online BPMN modeler. |
| 15 | [Vizdom](https://awesomedataviz.com/tools/vizdom/) | 193 | 0 | Apache-2.0 | A declarative graph layout and rendering engine for Javascript/Typescript powered by Rust/WebAssembly. |

Source: https://awesomedataviz.com/categories/javascript-graph-visualization/ · Data updated 2026-10-04 · Content: CC BY 4.0, Awesome Dataviz (https://awesomedataviz.com).
