teqnomaze / package-installer
Installs packages of type custom-package into packages/<Name>/
Package info
github.com/teqnomaze/package-installer
Type:composer-plugin
pkg:composer/teqnomaze/package-installer
Requires
- php: >=8.2
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.0
- phpstan/phpstan: ^2.3
- phpunit/phpunit: ^11
- squizlabs/php_codesniffer: ^4.0
- teqnomaze/code-coverage: ^2.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
A Composer installer plugin that installs packages of type custom-package into a packages/<Name>/ directory of your project instead of vendor/.
Requirements
- PHP 8.2 or higher
- Composer 2.x
Installation
Require the plugin in the consuming project:
composer require teqnomaze/package-installer
Allow it to run:
{
"config": {
"allow-plugins": {
"teqnomaze/package-installer": true
}
}
}
Configuration
Target directory (consuming project)
Default is packages, relative to the project root (the directory containing vendor/).
{
"extra": {
"package-installer-target": "lib/packages"
}
}
Directory name (package)
Default is the studly-cased package name: vendor/foo-bar becomes FooBar. Override it in the package's composer.json:
{
"extra": {
"package-installer-name": "Foo"
}
}
Notes
- Add
packages/to.gitignorein the consuming project if you do not want installed packages committed. - Do not edit files in
packages/<Name>/. They are replaced on update.
Changelog
All the notable changes to this project will be documented in CHANGELOG.md file.
License
This project is licensed under the MIT License. See LICENSE for more information.