PHPackages                             neclimdul/composer-installers-extender - 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. neclimdul/composer-installers-extender

ActiveComposer-plugin

neclimdul/composer-installers-extender
======================================

Extend the composer/installers plugin to accept any arbitrary package type.

2.0.5(1y ago)176.8k↓10.7%2MITPHPPHP &gt;=7.1

Since Jan 7Pushed 1y agoCompare

[ Source](https://github.com/neclimdul/composer-installers-extender)[ Packagist](https://packagist.org/packages/neclimdul/composer-installers-extender)[ Docs](http://www.oomphinc.com/)[ RSS](/packages/neclimdul-composer-installers-extender/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (5)Versions (17)Used By (0)

NOTE: This is a temporary fork of the main package to allow testing of the installer name fix from [oomphinc#26](https://github.com/oomphinc/composer-installers-extender/issues/26). This is not a permanent repo and you should follow that issue because some day it will go away.

Composer Installers Extender
============================

[](#composer-installers-extender)

The `composer-installers-extender` is a plugin for [Composer](https://getcomposer.org) that allows any package to be installed to a directory other than the default `vendor`directory within a project on a package-by-package basis. This plugin extends the [`composer/installers`](https://github.com/composer/installers) plugin to allow any arbitrary package type to be handled by their custom installer.

The [`composer/installers`](https://github.com/composer/installers) plugin has a finite set of supported package types and we recognize the need for any arbitrary package type to be installed to a specific directory other than `vendor`. This plugin allows additional package types to be handled by the [`composer/installers`](https://github.com/composer/installers) plugin, benefiting from their explicit install path mapping and token replacement of package properties.

How to Install
--------------

[](#how-to-install)

Add `oomphinc/composer-installers-extender` as a dependency of your project:

```
$ composer require oomphinc/composer-installers-extender
```

This plugin requires at least PHP 7.1. If you're using a lower version of PHP use the latest stable 1.x release:

```
$ composer require oomphinc/composer-installers-extender:^1.1
```

How to Use
----------

[](#how-to-use)

The [`composer/installers`](https://github.com/composer/installers) plugin is a dependency of this plugin and will be automatically required as well if not already required.

To support additional package types, add an array of these types in the `extra` property in your `composer.json`:

with [`composer/installers`](https://github.com/composer/installers) &lt; v1.0.13:

```
{
    "extra": {
        "installer-types": ["library"]
    }
}
```

with [`composer/installers`](https://github.com/composer/installers) &gt;= v1.0.13:

```
{
    "extra": {
        "installer-types": ["drupal-library"]
    }
}
```

Then refer to that type when adding to `installer-paths`:

with [`composer/installers`](https://github.com/composer/installers) &lt; v1.0.13:

```
{
    "extra": {
        "installer-types": ["library"],
        "installer-paths": {
            "special/package/": ["my/package"],
            "path/to/libraries/{$name}/": ["type:library"]
        }
    }
}
```

with [`composer/installers`](https://github.com/composer/installers) &gt;= v1.0.13:

```
{
    "extra": {
        "installer-types": ["drupal-library"],
        "installer-paths": {
            "special/package/": ["my/package"],
            "path/to/libraries/{$name}/": ["type:drupal-library"]
        }
    }
}
```

By default, packages that do not specify a `type` will be considered the type `library`. Adding support for this type allows any of these packages to be placed in a different install path.

If a type has been added to `installer-types`, the plugin will attempt to find an explicit installer path in the mapping. If there is no match either by name or by type, the default installer path for all packages will be used instead.

**Please see the README for [`composer/installers`](https://github.com/composer/installers) to see the supported syntax for package and type matching as well as the supported replacement tokens in the path (e.g. `{$name}`).**

License
-------

[](#license)

[MIT License](LICENSE)

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance48

Moderate activity, may be stable

Popularity33

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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

Every ~377 days

Recently: every ~371 days

Total

10

Last Release

385d ago

Major Versions

v1.1.2 → 2.0.02020-08-11

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/82823?v=4)[James Gilliland](/maintainers/neclimdul)[@neclimdul](https://github.com/neclimdul)

---

Top Contributors

[![balbuf](https://avatars.githubusercontent.com/u/3887845?v=4)](https://github.com/balbuf "balbuf (13 commits)")[![neclimdul](https://avatars.githubusercontent.com/u/82823?v=4)](https://github.com/neclimdul "neclimdul (9 commits)")[![ben-hamelin](https://avatars.githubusercontent.com/u/53975352?v=4)](https://github.com/ben-hamelin "ben-hamelin (2 commits)")[![bendoh](https://avatars.githubusercontent.com/u/1833896?v=4)](https://github.com/bendoh "bendoh (2 commits)")[![sfsmfc](https://avatars.githubusercontent.com/u/5294925?v=4)](https://github.com/sfsmfc "sfsmfc (1 commits)")[![syzygy333](https://avatars.githubusercontent.com/u/3818710?v=4)](https://github.com/syzygy333 "syzygy333 (1 commits)")[![webflo](https://avatars.githubusercontent.com/u/123946?v=4)](https://github.com/webflo "webflo (1 commits)")[![XedinUnknown](https://avatars.githubusercontent.com/u/1428973?v=4)](https://github.com/XedinUnknown "XedinUnknown (1 commits)")[![cfoellmann](https://avatars.githubusercontent.com/u/1256090?v=4)](https://github.com/cfoellmann "cfoellmann (1 commits)")[![hussainweb](https://avatars.githubusercontent.com/u/1040271?v=4)](https://github.com/hussainweb "hussainweb (1 commits)")[![johnpicozzi](https://avatars.githubusercontent.com/u/6811770?v=4)](https://github.com/johnpicozzi "johnpicozzi (1 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/neclimdul-composer-installers-extender/health.svg)

```
[![Health](https://phpackages.com/badges/neclimdul-composer-installers-extender/health.svg)](https://phpackages.com/packages/neclimdul-composer-installers-extender)
```

###  Alternatives

[elgg/elgg

Elgg is an award-winning social networking engine, delivering the building blocks that enable businesses, schools, universities and associations to create their own fully-featured social networks and applications.

1.7k15.7k5](/packages/elgg-elgg)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

44643.1k1](/packages/pressbooks-pressbooks)[altis/core

Core module for Altis

19213.6k2](/packages/altis-core)[johnbillion/user-switching

Instant switching between user accounts in WordPress and WooCommerce.

19768.3k2](/packages/johnbillion-user-switching)[rainlab/blog-plugin

Blog plugin for October CMS

17257.7k](/packages/rainlab-blog-plugin)[php-composter/php-composter

Git Hooks Management through Composer.

10525.1k11](/packages/php-composter-php-composter)

PHPackages © 2026

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