PHPackages                             bkief29/pcomposer - 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. bkief29/pcomposer

ActiveComposer-plugin[Utility &amp; Helpers](/categories/utility)

bkief29/pcomposer
=================

A composer plugin to provide the ability to share and reuse packages across the system.

1.0(3y ago)2131[1 PRs](https://github.com/bskiefer/pcomposer/pulls)MITPHPPHP &gt;=5.3

Since May 17Pushed 3y ago1 watchersCompare

[ Source](https://github.com/bskiefer/pcomposer)[ Packagist](https://packagist.org/packages/bkief29/pcomposer)[ RSS](/packages/bkief29-pcomposer/feed)WikiDiscussions master Synced yesterday

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

pcomposer
=========

[](#pcomposer)

Based on the ideology of [pnpm](https://pnpm.io) to reduce and reuse shared packages.

Install
-------

[](#install)

`composer global require bkief29/pcomposer`

Setup
-----

[](#setup)

Modify your ~/.composer/config.json to include the following:

> Replace `%MY_USER%` with your user, or specify a custom path for `vendor-dir`

```
{
    "config": {
        "allow-plugins": {
            "bkief29/pcomposer": true
        },
        "extra" : {
            "shared-package": {
                "vendor-dir": "/Users/%MY_USER%/.composer/pcomposer",
                "symlink-dir": "vendor",
                "symlink-enabled": true,
                "package-list": [
                    "*"
                ]
            }

        }
    }
}
```

Options
-------

[](#options)

### Exclude packages from being symlinked

[](#exclude-packages-from-being-symlinked)

In your project's composer.json:

```
"config": {
    "extra" : {
        "pcomposer": {
            "exclude": [
                "spatie/data-transfer-object"
            ]
        }
    }
},
```

Extras
------

[](#extras)

### Migrate to pcomposer for all of your projects

[](#migrate-to-pcomposer-for-all-of-your-projects)

> Usage: `pcomposer ~/projects`

```
function pcomposer() {
  find $1 -type d \( -name "vendor" \) -maxdepth 2 -print0 | while read -d $'\0' file
  do
     echo "$file"
     cd "$file/../" && composer install
  done
}
```

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

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.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1454d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3991afb5fcece92bbd6b0c772f708f6f1586e5077010f714ccaf01b052e8c857?d=identicon)[bskiefer](/maintainers/bskiefer)

---

Tags

composercomposer-plugincomposer-installer

### Embed Badge

![Health badge](/badges/bkief29-pcomposer/health.svg)

```
[![Health](https://phpackages.com/badges/bkief29-pcomposer/health.svg)](https://phpackages.com/packages/bkief29-pcomposer)
```

###  Alternatives

[mnsami/composer-custom-directory-installer

A composer plugin, to help install packages of different types in custom paths.

1395.0M52](/packages/mnsami-composer-custom-directory-installer)[vaimo/composer-patches

Applies a patch from a local or remote file to any package that is part of a given composer project. Patches can be defined both on project and on package level. Optional support for patch versioning, sequencing, custom patch applier configuration and patch command for testing/troubleshooting added patches.

2994.3M15](/packages/vaimo-composer-patches)[typisttech/imposter-plugin

Composer plugin that wraps all composer vendor packages inside your own namespace. Intended for WordPress plugins.

158251.0k2](/packages/typisttech-imposter-plugin)[arokettu/composer-license-manager

License management plugin for Composer

61207.9k](/packages/arokettu-composer-license-manager)[liborm85/composer-vendor-cleaner

Composer Vendor Cleaner removes unnecessary development files and directories from vendor directory.

35342.7k1](/packages/liborm85-composer-vendor-cleaner)[avored/module-installer

A composer plugin, to help install modules for AvoREd e commerce applications.

139.1k14](/packages/avored-module-installer)

PHPackages © 2026

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