# Dagre

Directed graph layout for JavaScript

Repository: https://github.com/dagrejs/dagre
Canonical: https://ross.abutalabs.com/products/dagre
Language: TypeScript
License: MIT
License Family: permissive
Last push: 2026-08-08T15:09:12+00:00

## Health v2 (maintenance only)
Score: 72/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 96, release rhythm 26, longevity 100
- inputs: {"age_days": 5088, "days_push": 25, "days_rel": 283, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 5774, forks 638 (observed 2026-08-28T04:09:29.475756+00:00)

## What it is
Dagre is a JavaScript library for laying out directed graphs on the client side, computing node and edge positions automatically. The dagre-d3 companion package provides a D3-based renderer for visualizing those layouts in the browser.

## Use cases
- automatically layout directed graphs in the browser
- render flowcharts and dependency diagrams with D3
- compute node positions for graph visualizations
- draw DAG diagrams in a web app
- visualize state machines or workflow graphs client-side

## When to choose
- you need automatic layout of directed graphs in JavaScript
- you want a D3-based renderer for graph diagrams
- you need client-side layout without a server

## When to avoid
- you need interactive graph editing rather than static layout
- you need force-directed or undirected graph layouts
- you need server-side or non-JavaScript graph layout

## Facets
- artifact type: library
- maturity: maintenance
- function: data-visualization, graphics
- domain: data-visualization, web-development, frontend
- platform: browser
- tags: graph-layout, directed-graphs, d3, dagre-d3, client-side, nodejs, javascript

## Member repositories
- dagrejs/dagre (main) score 72
- dagrejs/dagre-d3 (plugin) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:29.475756+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:52:52.180084+00:00, confidence not recorded.
  - readme: https://github.com/dagrejs/dagre (fetched 2026-08-28T04:09:29.475756+00:00, sha c358b9119e41)
  - registry_npm: https://registry.npmjs.org/dagre (fetched 2026-08-29T08:48:46.564911+00:00, sha 8fdbc3150be8)
  - registry_npm: https://registry.npmjs.org/dagre-d3 (fetched 2026-08-29T08:48:46.568435+00:00, sha ab43a5fa6a9b)
- Data as of 2026-08-30T08:39:29.467469+00:00.
