dagrejs/dagre

Directed graph layout for JavaScript

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 7 minutes ago
Added to GitGenius on September 11th, 2026
Created on September 27th, 2012
Open Issues & Pull Requests: 173 (+0)
GitHub issues: Enabled
Number of forks: 639
Total Stargazers: 5,789 (+0)
Total Subscribers: 93 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

Dagre is a JavaScript library that makes it easy to lay out directed graphs on the client-side.

Dagre solves the problem of automatically positioning nodes and edges in directed acyclic graphs, which is computationally complex to do well by hand. The library implements a layering algorithm that arranges graph elements hierarchically, minimizing edge crossings and producing readable layouts suitable for flowcharts, dependency diagrams, and network visualizations. It handles the geometric calculations needed to transform abstract graph structures into concrete visual coordinates.

Dagre suits projects that need to render directed graphs in web applications without server-side processing. It works well for visualizing workflows, organizational hierarchies, build dependency trees, and similar structures where automatic layout saves manual positioning effort. The library is particularly valuable when you need client-side rendering to avoid network latency or when graph structure changes dynamically. Developers should be aware that only the version published under the DagreJs organization on NPM is actively maintained; other versions are not receiving updates.

The project has a substantial base of adopters reporting real-world use, as evidenced by the fact that almost all open issues are raised by outside users rather than by the core team. However, issues and pull requests often wait weeks or longer for a first response, so adoption should account for limited availability of maintainer support.