All Projects → mnsami → Composer Custom Directory Installer

mnsami / Composer Custom Directory Installer

Licence: mit
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.

Projects that are alternatives of or similar to Composer Custom Directory Installer

Awesome Composer
😎 A curated awesome list for Composer, Packagist, Satis, Plugins, Scripts, Composer related resources, tutorials.
Stars: ✭ 738 (+530.77%)
Mutual labels:  composer, composer-plugin, composer-packages
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 composer command for testing/troubleshooting patches.
Stars: ✭ 196 (+67.52%)
Mutual labels:  composer, composer-plugin, composer-packages
Laravel Server Monitor
Server Monitoring Command for Laravel Applications
Stars: ✭ 424 (+262.39%)
Mutual labels:  composer, composer-packages
Composer Registry Manager
🛠 🔨 Composer registry manager that help to easily switch to the composer repository you want.
Stars: ✭ 448 (+282.91%)
Mutual labels:  composer, composer-plugin
Composer Merge Plugin
Merge one or more additional composer.json files at Composer runtime
Stars: ✭ 718 (+513.68%)
Mutual labels:  composer, composer-plugin
video-downloader
Video Downloader for Facebook.
Stars: ✭ 63 (-46.15%)
Mutual labels:  composer, composer-packages
Acf Pro Installer
A composer install helper for Advanced Custom Fields PRO
Stars: ✭ 265 (+126.5%)
Mutual labels:  composer, composer-plugin
Composer Normalize
🎵 Provides a composer plugin for normalizing composer.json.
Stars: ✭ 602 (+414.53%)
Mutual labels:  composer, composer-plugin
composer-velocita
Velocita - Composer plugin for transparent caching
Stars: ✭ 26 (-77.78%)
Mutual labels:  composer, composer-plugin
Composer Notifier
💬 Display desktop notification after Composer install / update
Stars: ✭ 42 (-64.1%)
Mutual labels:  composer, composer-plugin
Composer Dropin Installer
Use composer for installing dropin dependencies
Stars: ✭ 30 (-74.36%)
Mutual labels:  composer, composer-plugin
Studio
A workbench for developing Composer packages.
Stars: ✭ 1,021 (+772.65%)
Mutual labels:  composer-plugin, composer-packages
composer-inheritance-plugin
Opinionated version of Wikimedia composer-merge-plugin to work in pair with Bamarni composer-bin-plugin.
Stars: ✭ 20 (-82.91%)
Mutual labels:  composer, composer-plugin
wp-translation-downloader
Composer plugin to download WordPress translations
Stars: ✭ 35 (-70.09%)
Mutual labels:  composer, composer-plugin
Jwt Auth Guard
JWT Auth Guard for Laravel and Lumen Frameworks.
Stars: ✭ 319 (+172.65%)
Mutual labels:  composer, composer-packages
cyclonedx-php-composer
Create CycloneDX Software Bill of Materials (SBOM) from PHP Composer projects
Stars: ✭ 20 (-82.91%)
Mutual labels:  composer, composer-plugin
Composer Changelogs
📓 Display better summary after Composer update
Stars: ✭ 540 (+361.54%)
Mutual labels:  composer, composer-plugin
tdee-calculator
TDEE Calculator is a composer library that calculates how much energy (calories) are burned daily given the weight, height and age or Lean Body Mass.
Stars: ✭ 16 (-86.32%)
Mutual labels:  composer, composer-packages
composer-diff
Compares composer.lock changes and generates Markdown report so you can use it in PR description.
Stars: ✭ 51 (-56.41%)
Mutual labels:  composer, composer-plugin
Beetbox
Pre-provisioned L*MP stack
Stars: ✭ 94 (-19.66%)
Mutual labels:  composer, composer-plugin

composer-custom-directory-installer

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.

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,

https://getcomposer.org/doc/04-schema.md#type

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

  • 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

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].