PHPackages                             mnsami/composer-custom-directory-installer - 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. mnsami/composer-custom-directory-installer

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

mnsami/composer-custom-directory-installer
==========================================

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

2.0.0(5y ago)1395.0M—2.7%24[4 issues](https://github.com/mnsami/composer-custom-directory-installer/issues)[1 PRs](https://github.com/mnsami/composer-custom-directory-installer/pulls)20MITPHPPHP &gt;=5.3

Since Jul 28Pushed 11mo ago7 watchersCompare

[ Source](https://github.com/mnsami/composer-custom-directory-installer)[ Packagist](https://packagist.org/packages/mnsami/composer-custom-directory-installer)[ RSS](/packages/mnsami-composer-custom-directory-installer/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (8)Dependencies (1)Versions (18)Used By (20)

composer-custom-directory-installer
===================================

[](#composer-custom-directory-installer)

A composer plugin to install different types of Composer packages in custom directories outside the default `vendor` folder.

This is not another `composer-installer` library for supporting non-composer package types i.e. `application` .. etc. This is only to add the flexibility of installing composer packages outside the vendor folder. This package only supports `composer` package types,

> The type of the package. It defaults to library.
>
> Package types are used for custom installation logic. If you have a package that needs some special logic, you can define a custom type. This could be a symfony-bundle, a wordpress-plugin or a typo3-module. These types will all be specific to certain projects, and they will need to provide an installer capable of installing packages of that type.

How to use
----------

[](#how-to-use)

- Include the composer plugin into your `composer.json` `require` section::

```
  "require":{
    "php": ">=5.3",
    "mnsami/composer-custom-directory-installer": "1.1.*",
    "monolog/monolog": "*"
  }

```

- In the `extra` section define the custom directory you want to the package to be installed in::

```
  "extra":{
    "installer-paths":{
      "./monolog/": ["monolog/monolog"]
      }
    }

```

by adding the `installer-paths` part, you are telling composer to install the `monolog` package inside the `monolog` folder in your root directory.

- As an added new feature, we have added more flexibility in defining your download directory same like the `composer/installers`, in other words you can use variables like `{$vendor}` and `{$name}` in your `installer-path` section::

```
  "extra": {
    "installer-paths": {
      "./customlibs/{$vendor}/db/{$name}": ["doctrine/orm"]
    }
  }

```

the above will manage to install the `doctrine/orm` package in the root folder of your project, under `customlibs`.

Note
----

[](#note)

Composer `type: project` is not supported in this installer, as packages with type `project` only make sense to be used with application shells like `symfony/framework-standard-edition`, to be required by another package.

###  Health Score

52

—

FairBetter than 96% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity60

Solid adoption and visibility

Community33

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 93.8% 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.

###  Release Activity

Cadence

Every ~347 days

Recently: every ~468 days

Total

8

Last Release

1884d ago

Major Versions

1.1.1 → 2.0.02020-08-18

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/579064?v=4)[Mina Nabil Sami](/maintainers/mnsami)[@mnsami](https://github.com/mnsami)

---

Top Contributors

[![mnsami](https://avatars.githubusercontent.com/u/579064?v=4)](https://github.com/mnsami "mnsami (45 commits)")[![alesrebec](https://avatars.githubusercontent.com/u/426177?v=4)](https://github.com/alesrebec "alesrebec (1 commits)")[![chr-hertel](https://avatars.githubusercontent.com/u/2852185?v=4)](https://github.com/chr-hertel "chr-hertel (1 commits)")[![sagudev](https://avatars.githubusercontent.com/u/16504129?v=4)](https://github.com/sagudev "sagudev (1 commits)")

---

Tags

composercomposer-installercomposer-packagescomposer-pluginflexibilitycomposercomposer-plugincomposer-installer

### Embed Badge

![Health badge](/badges/mnsami-composer-custom-directory-installer/health.svg)

```
[![Health](https://phpackages.com/badges/mnsami-composer-custom-directory-installer/health.svg)](https://phpackages.com/packages/mnsami-composer-custom-directory-installer)
```

###  Alternatives

[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.3M16](/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)[szepeviktor/composer-envato

Composer plugin for Envato

3715.2k1](/packages/szepeviktor-composer-envato)

PHPackages © 2026

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