PHPackages                             kassko/composer-graph-dependency - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. kassko/composer-graph-dependency

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

kassko/composer-graph-dependency
================================

Filters and displays graphes dependencies of packages installed

4383PHP

Since Feb 14Pushed 6y ago2 watchersCompare

[ Source](https://github.com/kassko/composer-graph-dependency)[ Packagist](https://packagist.org/packages/kassko/composer-graph-dependency)[ RSS](/packages/kassko-composer-graph-dependency/feed)WikiDiscussions wip Synced 2w ago

READMEChangelogDependenciesVersions (1)Used By (0)

Create a graph with all packages installed (Packages, packages requires, root package require-dev)

Export to a file composer-dependency.svg in svg format to the root of your project, at the same place as the composer.json

```
./vendor/bin/composer-dependency export
```

Or

```
./vendor/bin/composer-dependency export .
```

Export to a specific path

```
./vendor/bin/composer-dependency export . my/custom/path.svg
```

Export to a file composer-dependency.png in png format.

```
./vendor/bin/composer-dependency export . composer-dependency.png
```

Export to a file composer-dependency.jpeg in jpeg format.

```
./vendor/bin/composer-dependency export . composer-dependency.jpeg
```

Create a graph and filter packages to display
---------------------------------------------

[](#create-a-graph-and-filter-packages-to-display)

### Do not display root dev dependencies (require-dev)

[](#do-not-display-root-dev-dependencies-require-dev)

```
./vendor/bin/composer-dependency --no-root-dev-dep export
```

### Create a graph with all packages installed except one

[](#create-a-graph-with-all-packages-installed-except-one)

```
./vendor/bin/composer-dependency --no-packages="vendorA/packageA" export
```

### Create a graph with all packages installed except those indicated

[](#create-a-graph-with-all-packages-installed-except-those-indicated)

```
./vendor/bin/composer-dependency --no-packages="vendorA/packageA vendorA/packageB vendorB/packageA" export
```

### Create a graph with only display package installed indicated

[](#create-a-graph-with-only-display-package-installed-indicated)

```
./vendor/bin/composer-dependency --packages="vendorA/packageA vendorA/packageB vendorB/packageA" export
```

### Create a graph with all packages installed except those of vendors indicated

[](#create-a-graph-with-all-packages-installed-except-those-of-vendors-indicated)

```
./vendor/bin/composer-dependency --no-vendors="vendorA vendorB" export
```

### Create a graph with only packages installed from vendors indicated

[](#create-a-graph-with-only-packages-installed-from-vendors-indicated)

```
./vendor/bin/composer-dependency --vendors="vendorA vendorB" export
```

### Combine the options above: display all packages installed from vendorA except packageB

[](#combine-the-options-above-display-all-packages-installed-from-vendora-except-packageb)

```
./vendor/bin/composer-dependency --vendors="vendorA" --no-packages="vendorA/packageB" export
```

Create a graph and filter dependencies to display
-------------------------------------------------

[](#create-a-graph-and-filter-dependencies-to-display)

### Note that the following command displays only packages installed from vendorA but all dependencies from all vendors

[](#note-that-the-following-command-displays-only-packages-installed-from-vendora-but-all-dependencies-from-all-vendors)

```
./vendor/bin/composer-dependency --vendors="vendorA" --vendors-dep="vendorA"
```

### Create a graph with only packages installed from vendorA and dependencies from vendorA too

[](#create-a-graph-with-only-packages-installed-from-vendora-and-dependencies-from-vendora-too)

```
./vendor/bin/composer-dependency --vendors="vendorA" --dep-vendors="vendorA" export
```

### Create a graph with only packages installed from vendorA and all dependencies except those from vendorB and vendorC and the dependency vendorD/packageA

[](#create-a-graph-with-only-packages-installed-from-vendora-and-all-dependencies-except-those-from-vendorb-and-vendorc-and-the-dependency-vendordpackagea)

```
./vendor/bin/composer-dependency --vendors="vendorA" --no-dep-vendors="vendorA vendorB vendorC" --no-dep-packages="vendorD/packageA" export
```

Create a graph with only some package having a specific tag in composer.json "extra" key.
-----------------------------------------------------------------------------------------

[](#create-a-graph-with-only-some-package-having-a-specific-tag-in-composerjson-extra-key)

### Create a graph with package having in composer.json "extra" key a tag "type" with the value "business". Concretely, this mean you create a graph with only your business packages.

[](#create-a-graph-with-package-having-in-composerjson-extra-key-a-tag-type-with-the-value-business-concretely-this-mean-you-create-a-graph-with-only-your-business-packages)

```
./vendor/bin/composer-dependency --tags="type business" export
```

### Create a graph with package having in composer.json "extra" key

[](#create-a-graph-with-package-having-in-composerjson-extra-key)

- a tag "type" with the value "business"
- or this same tag "type" with the value "data-mining"

Concretely, this mean you create a graph with only your business and data-mining packages.

```
./vendor/bin/composer-dependency
--tags="type business type data-mining" export
```

### Create a graph without package having in composer.json "extra" key

[](#create-a-graph-without-package-having-in-composerjson-extra-key)

- a tag "type" with the value "bridge"
- or a tag "source\_code" with the value "python"
- or this same tag "source\_code" with the value "ruby"

```
./vendor/bin/composer-dependency
--no-tags="type bridge source_code python source_code ruby"
```

A composer extra could look like below:

```
{
	"extra": {
		"type": "business",
		"source_code": "python"
	}
}
```

Tags can be "deep".

```
./vendor/bin/composer-dependency
--tags="tag.type business tag.type data-mining" export
```

A corresponding composer extra could look like below:

```
{
	"extra": {
		"tag": {
			"type": "business",
			"source_code": "python"
		}
	}
}
```

Off course, you can still combine options.

Available options are:

- `format`
- `packages`
- `no-packages`
- `vendors`
- `no-vendors`
- `dep-packages`
- `no-dep-packages`
- `dep-vendors`
- `no-dep-vendors`
- `no-root-dev-dep`

Available formats are:

- `svg`
- `png`
- `jpeg`

Create several graphes by packages or by vendors
------------------------------------------------

[](#create-several-graphes-by-packages-or-by-vendors)

### Create several graphes to a directory named `composer-dependency` in svg format (that is the default format), one by packages indicated. Each graph display one package and all its dependency package.

[](#create-several-graphes-to-a-directory-named-composer-dependency-in-svg-format-that-is-the-default-format-one-by-packages-indicated-each-graph-display-one-package-and-all-its-dependency-package)

```
./vendor/bin/composer-dependency --separate-graph-packages="vendorA/packageA vendorA/packageB" multi-export
```

### Create several graphes to a directory named `composer-dependency` in png format, one by vendor indicated. Each graph displays all vendor packages.

[](#create-several-graphes-to-a-directory-named-composer-dependency-in-png-format-one-by-vendor-indicated-each-graph-displays-all-vendor-packages)

```
./vendor/bin/composer-dependency --separate-graph-vendors="vendorA vendorB" --format="png" multi-export
```

### Create several graphes to a directory named `composer-dependency` in png format, one for each package of each vendors indicated.

[](#create-several-graphes-to-a-directory-named-composer-dependency-in-png-format-one-for-each-package-of-each-vendors-indicated)

```
./vendor/bin/composer-dependency --separate-graph-vendors-packages="vendorA vendorB" --format="png" multi-export
```

### Combine with filters

[](#combine-with-filters)

```
./vendor/bin/composer-dependency --no-packages="vendorA/packageB" --separate-graph-vendors="vendorA vendorB" --format="png" multi-export
```

Note that some combinations have no sense. For the moment, there is no control of the consistency of a combinations. It's to you to be carefull. This will be fixed later.

Relies heavily on:
------------------

[](#relies-heavily-on)

- [clue/composer-dependency](https://github.com/clue/composer-dependency)
- [jms/composer-deps-analyzer](https://github.com/schmittjoh/composer-deps-analyzer)

###  Health Score

21

—

LowBetter than 17% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/9fac4367e85288a508e3720645e35b3cbe119b93e06b2d8a382b0a375413a561?d=identicon)[kassko](/maintainers/kassko)

---

Top Contributors

[![kassko](https://avatars.githubusercontent.com/u/8608325?v=4)](https://github.com/kassko "kassko (5 commits)")

### Embed Badge

![Health badge](/badges/kassko-composer-graph-dependency/health.svg)

```
[![Health](https://phpackages.com/badges/kassko-composer-graph-dependency/health.svg)](https://phpackages.com/packages/kassko-composer-graph-dependency)
```

###  Alternatives

[gladcodes/keygen

A fluent PHP random key generator.

123846.6k2](/packages/gladcodes-keygen)[symfony/ux-vue

Integration of Vue.js in Symfony

35999.2k4](/packages/symfony-ux-vue)[ryanpotter/silverstripe-cms-theme

CMS Theme

39279.0k5](/packages/ryanpotter-silverstripe-cms-theme)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
