A Composer plugin that installs packages in custom directories outside the default vendor folder.
composer-custom-directory-installer is a Composer plugin that enables PHP developers to install Composer packages in custom directories outside the default vendor folder. It solves the problem of rigid package placement by allowing flexible, organized project structures through simple configuration in composer.json.
PHP developers using Composer who need to organize packages in specific directories for project structure, framework conventions, or deployment requirements.
It provides a lightweight, focused alternative to more complex installers by offering custom path support for standard Composer packages without additional package type handling, making it ideal for straightforward directory customization.
A composer plugin, to install differenty types of composer packages in custom directories outside the default composer default installation path which is in the vendor folder.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows defining custom installation directories in composer.json's extra section, enabling organized project structures outside the default vendor folder, as demonstrated in the README with examples like './monolog/'.
Supports {$vendor} and {$name} variables in paths for dynamic directory naming, similar to composer/installers, providing flexibility for structured layouts, as shown in the README with './customlibs/{$vendor}/db/{$name}'.
Easily added as a Composer plugin by including it in the require section and configuring paths in composer.json, without complex setup or additional dependencies.
Specifically targets standard Composer package types, avoiding bloat from handling non-composer types, making it lightweight for straightforward directory customization needs.
Only works with standard Composer package types and explicitly excludes type 'project', as stated in the README, making it unsuitable for frameworks or applications with specialized installer requirements.
Lacks advanced features like conditional installations, integration with other installers, or support for non-standard types, which limits its utility in complex or diverse project environments.
While simple for a few packages, managing numerous custom paths in composer.json's extra section can become cumbersome and error-prone, especially in large projects with many dependencies.