PHPackages                             farhanwazir/cpcinstaller - 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. farhanwazir/cpcinstaller

ActiveComposer-plugin

farhanwazir/cpcinstaller
========================

v1.0.3(9y ago)1301MITPHPPHP &gt;=5.6

Since Feb 7Pushed 9y ago2 watchersCompare

[ Source](https://github.com/farhanwazir/CPCInstaller)[ Packagist](https://packagist.org/packages/farhanwazir/cpcinstaller)[ RSS](/packages/farhanwazir-cpcinstaller/feed)WikiDiscussions master Synced 2mo ago

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

CPC Installer
=============

[](#cpc-installer)

Composer Packages Custom Installer is a easy to custom, you don't need any speciality. This will helpful for installation of your packages, modules, plugins, theme(s) and/or whatever you call, in your's given location with many more options.

#### Boost up your work, FORK it right now!

[](#boost-up-your-work-fork-it-right-now)

Add just 2 lines in composer.json, [Composer package schema's](https://getcomposer.org/doc/04-schema.md)

```
    "type": "yourname-packagename",
    "require": {
        "farhanwazir/cpcinstaller" : "1.*"
        .....
    },
    "repositories": [
            {
                "type": "vcs",
                "url": "https://github.com/yourname/cpcinstaller"
            }
        ],
```

**Change instructions for composer.json:** In the `repositories` attribute you need to replace url with your forked url.

If you have forked then go under `src/Installer/Config` see `sample.php` configuration file, copy it and add many as you wish. Each attribute has its own functionality so read comments carefully and change it as on your needs. If you don't want optional attributes then remove it.

Configuration File Instruction
------------------------------

[](#configuration-file-instruction)

- `Configuration file name` - here is no restrictions, name it whatever you want.
- `PHP file extension` - configuration file extension should be .php.

### Configuration attributes

[](#configuration-attributes)

- `type` - *Package type*

    It is belongs to composer.json type attribute. For more detail visit [Composer official documentation](https://getcomposer.org/doc/04-schema.md#type)

    - *DataType: String*
    - *Mandatory attribute*
- `location` - *Installation directory*

    It helps you to define where you wanted to install. It must be start from parent directory of vendor directory.

    **Instruction**: Path should end with trail slash /. Below example only for understanding, other attributes applies.

    - *Default: 'vendor'*
    - *Type: String Path*
    - *Mandatory attribute*

    `i.e 'directory1/subdirectory/' hierarchy looks like directory1/subdirectory/vendor/package`
- `only` *Allowed package(s)*

    If you want multiple packages for same "type" then use array as value like "only" =&gt; \["vendor/package\_1", "vendor/package\_2"\]

    You can also use wild card for packages like "restvel/\*" this will allow all packages from vendor "restvel" by matching "type"

    - *Default: null*
    - *Type: String/Array*
    - *Optional attribute*
- `rename` *Renaming package(s)*

    If "rename" will be string then all same "type" and "only" attributes installed under renamed. You can also use wild card, with prefix and/or suffix like **"package-\*" or "\*-package" or "package-\*-packages"**. Above example will be return "package-test" or "test-package" or "package-test-packages".

    If "only" has multiple packages list and you wants each package install under your custom name then it's length must be equals to "only" otherwise last name will be used in case of unordered position.

    **Instruction**: Empty quotes '' place package files on root of location attribute. Vendor attribute action applies.

    - *Default: null*
    - *Type: String*
    - *Optional attribute*
- `vendor` *Vendor reference*

    If you don't wanted to use vendor reference with package then its value should be false.

    - *Default: true*
    - *Options: true/false*
    - *Optional attribute*

Contribution
============

[](#contribution)

If have any suggestion for documentation then improve it and send me pull request.

Thank you for using
-------------------

[](#thank-you-for-using)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 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.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

3379d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d8e56eaa7647e429f12cfde6159e42059c4038f9009860a774808db5cdaf2cce?d=identicon)[farhanwazir](/maintainers/farhanwazir)

---

Top Contributors

[![farhanwazir](https://avatars.githubusercontent.com/u/241825?v=4)](https://github.com/farhanwazir "farhanwazir (9 commits)")

---

Tags

composercomposer-installercomposer-plugincomposer-supportframework-installerphp

### Embed Badge

![Health badge](/badges/farhanwazir-cpcinstaller/health.svg)

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

###  Alternatives

[humbug/box

Fast, zero config application bundler with PHARs.

1.3k801.5k68](/packages/humbug-box)[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)[mglaman/composer-drupal-lenient

1317.4M15](/packages/mglaman-composer-drupal-lenient)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5341.9M442](/packages/drupal-core-composer-scaffold)[roots/wordpress-core-installer

A Composer custom installer to handle installing WordPress as a dependency

4115.6M19](/packages/roots-wordpress-core-installer)[drupal/core-project-message

Adds a message after Composer installation.

2122.6M172](/packages/drupal-core-project-message)

PHPackages © 2026

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