mariusbuescher / node-composer
Installs composer nodejs or/and npm in vendor/
Installs: 563
Dependents: 2
Suggesters: 0
Security: 0
Stars: 6
Watchers: 1
Forks: 3
Open Issues: 6
Type:composer-plugin
pkg:composer/mariusbuescher/node-composer
Requires
- php: >=5.5.9
- composer-plugin-api: ^1.1
- composer/composer: ^1.4
- symfony/process: ^2.7 || ^3.0
This package is not auto-updated.
Last update: 2025-10-19 18:10:59 UTC
README
node-composer
composer plugin for a better frontend setup
PHP projects mostly are Web-Applications. Many Web-Applications also need a frontend part which runs in the browser. In modern Web-Development there often a whole build-chain connected to the frontend, so you can compile e.g. your scss, build your JavaScript with webpack and optimize your images.
This plugin provides a way to automatically download and installthe right version of node.js, npm and yarn. The binaries are linked to the bin-directory specified in your composer.json.
After that your can use node, npm and yarn in your composer-scripts.
Setup
The setup is pretty easy. Simply install the plugin in specify the node-version in your composer.json extra configs.
Example composer.json
{
"name": "my/project",
"type": "project",
"license": "MIT",
"authors": [
{
"name": "Marius Büscher",
"email": "marius.buescher@gmx.de"
}
],
"require": {
"mariusbuescher/node-composer": "*"
},
"extra": {
"mariusbuescher": {
"node-composer": {
"node-version": "4.8.3",
"yarn-version": "0.22.0"
}
}
}
}
Configuration
There are three parameters you can configure: The node version (node-version), the yarn version (yarn-version) and
the download url template for the node.js binary archives (node-download-url).
In the node download url the following parameters are replaced:
- version:
${version} - type of your os:
${osType} - system architecture:
${architecture} - file format
${format}
Example composer.json:
{
// ...
"extra": {
"mariusbuescher": {
"node-composer": {
"node-version": "6.11.0",
"yarn-version": "0.24.5",
"node-download-url": "https://nodejs.org/dist/v${version}/node-v${version}-${osType}-${architecture}.${format}"
}
}
}
}