fancyguy / webroot-installer
A composer installer for libraries that live in an application webroot.
Installs: 1 295 349
Dependents: 17
Suggesters: 0
Security: 0
Stars: 127
Watchers: 6
Forks: 22
Open Issues: 5
Type:composer-installer
pkg:composer/fancyguy/webroot-installer
Requires (Dev)
- composer/composer: 1.0.*@dev
- phpunit/phpunit: 3.7.*
This package is auto-updated.
Last update: 2025-10-15 07:26:41 UTC
README
This is for PHP packages that support composer to configure in their composer.json.  It will
allow a root package to define a webroot directory and webroot package and magically install it
in the correct location.
Example composer.json File
{
    "name": "fancyguy/www-fancyguy-com",
    "description": "Package to build www.fancyguy.com",
    "authors": [
        {
            "name": "Steve Buzonas",
            "email": "steve@fancyguy.com"
        }
    ],
    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "wordpress/wordpress",
                "type": "webroot",
                "version": "4.5.1",
                "dist": {
                    "type": "zip",
                    "url": "https://wordpress.org/wordpress-4.5.1-no-content.zip"
                },
                "require": {
                    "fancyguy/webroot-installer": "^1.0"
                }
            }
        }
    ],
    "require": {
        "wordpress/wordpress": "4.5.*"
    },
    "extra": {
        "webroot-dir": "content",
        "webroot-package": "wordpress/wordpress"
    }
}
This would install the defined wordpress/wordpress package in the content directory of the project.
Warning
Setting the webroot-dir to a non-empty directory will delete the contents in most cases.  It is recommended to use a clean target within your project directory.