Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mariusbuescher/node-composer
composer plugin for a better frontend setup
https://github.com/mariusbuescher/node-composer
Last synced: 24 days ago
JSON representation
composer plugin for a better frontend setup
- Host: GitHub
- URL: https://github.com/mariusbuescher/node-composer
- Owner: mariusbuescher
- License: mit
- Created: 2017-06-15T17:12:45.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-04-28T23:13:59.000Z (over 2 years ago)
- Last Synced: 2024-05-03T01:20:16.921Z (7 months ago)
- Language: PHP
- Size: 32.2 KB
- Stars: 6
- Watchers: 3
- Forks: 3
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-composer - Node-Composer - Installer for Node.js, npm and yarn. (Plugins / Support)
README
[![License](https://img.shields.io/packagist/l/mariusbuescher/node-composer)](LICENSE) [![Packagist Version](https://img.shields.io/packagist/v/mariusbuescher/node-composer)](https://packagist.org/packages/mariusbuescher/node-composer) [![Tests](https://github.com/mariusbuescher/node-composer/workflows/Tests/badge.svg?branch=master)](https://github.com/mariusbuescher/node-composer/actions?query=workflow%3ATests)
# 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
```json
{
"name": "my/project",
"type": "project",
"license": "MIT",
"authors": [
{
"name": "Marius Büscher",
"email": "[email protected]"
}
],
"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:
```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}"
}
}
}
}
```