A Composer plugin that automatically "compiles" frontend assets (js, css, etc.) for packages installed via Composer.
Let's assume we have a website project having a composer.json
that looks like this:
{
"name": "acme/my-project",
"require": {
"acme/foo": "^1",
"acme/bar": "^2",
"inpsyde/composer-assets-compiler": "^3"
},
"extra": {
"composer-asset-compiler": { "auto-run": true }
}
}
And then suppose that acme/foo
's composer.json
looks like this:
{
"name": "acme/foo",
"extra": {
"composer-asset-compiler": "gulp"
}
}
and acme/bar
's composer.json
looks like this:
{
"name": "acme/bar",
"extra": {
"composer-asset-compiler": "build"
}
}
When we'll install the project with Composer, the following happens:
composer-asset-compiler
configuration, finding "acme/foo"
and "acme/bar"
"acme/foo"
installation folder, and executes npm install && npm run gulp
"acme/bar"
installation folder, and executes npm install && npm run build
At the end of the process, we have a project with the dependencies installed, and their assets processed.
The example above is the simplest use case, but the plugin has many possible configurations and advanced use cases.
This repository is a free software, and is released under the terms of the MIT license. See LICENSE for complete license.