pahen/madge

Create graphs from your CommonJS, AMD or ES6 module dependencies

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 45 minutes ago
Added to GitGenius on September 6th, 2026
Created on May 20th, 2012
Open Issues & Pull Requests: 126 (+0)
GitHub issues: Enabled
Number of forks: 351
Total Stargazers: 10,162 (+0)
Total Subscribers: 49 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 13.8 days
Mean response time: 239.9 days
90th percentile: 757.4 days
Tracked items: 36

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 98% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 4% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 41
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,026 days
Stale 30+ days: 39
Stale 90+ days: 38

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • core (5)
  • bug (3)
  • cli (3)
  • viz (3)
  • pending (2)
  • dev (1)
  • enhancement (1)
  • good first issue (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Madge is a developer tool for generating visual graphs of your module dependencies, finding circular dependencies, and providing other dependency analysis information.

Madge solves the problem of understanding and visualizing complex module dependency structures in JavaScript and CSS projects. It works by extracting the dependency tree from your codebase and rendering it as a visual graph, making it easy to spot problematic patterns. The tool supports multiple module formats including AMD, CommonJS, and ES6 modules, as well as CSS preprocessors like Sass, Stylus, and Less. By default it excludes NPM-installed dependencies and Node.js core modules, focusing your analysis on your own code while automatically traversing child dependencies.

You should choose Madge if you need to understand the dependency structure of a JavaScript or CSS project, particularly when hunting for circular dependencies that can cause maintenance headaches. It works well for projects of any size where visualizing module relationships provides value. The tool offers both a command-line interface and a programmatic API, so you can integrate it into build processes or use it as a standalone analysis tool. The API provides methods to extract specific information like orphaned modules, leaf modules with no dependencies, and modules that depend on a given module.

Development on the project shows sustained engagement with regular updates to the codebase. The maintainer has actively refined the tool over time, responding to user needs and expanding its capabilities across different module systems and stylesheet languages.