Displaying opencollective statistics and a donation URL after users install a package is important for many creators. After problems with current packages that offer similar features, we decided to spin off our one own. Our key goals are:
- No interference/problems when installing packages. Never break installation because of the package
- Pretty output for all information
- Decent configurability
- Seamless drop-in for common solutions
- Add
@nuxtjs/opencollective
dependency using yarn or npm to your project - Add the script to
postinstall
in your package.json
{
// ...
"scripts": {
"postinstall": "opencollective || exit 0"
},
"collective": {
"url": "https://opencollective.com/nuxtjs"
}
// ...
}
- Configure it
Configuration is applied through your project's package.json
.
A full configuration looks like:
{
"collective": {
"url": "https://opencollective.com/nuxtjs",
"logoUrl": "https://opencollective.com/nuxtjs/logo.txt?reverse=true&variant=variant2",
"donation": {
"slug": "/order/591",
"amount": "50",
"text": "Please donate:"
}
}
}
Attribute | Optional | Default | Comment |
---|---|---|---|
url | ❌ | - | The URL to your opencollective page |
logo | ✅ | - | LEGACY: The URL to the logo that should be displayed. Please use logoUrl instead. |
logoUrl | ✅ | - | The URL to the ASCII-logo that should be displayed. |
donation.slug | ✅ | '/donate' | The slug that should be appended to url . Can be used to setup a specific order. |
donation.amount | ✅ | - | The default amount that should be selected on the opencollective page. |
donation.text | ✅ | 'Donate:' | The text that will be displayed before your donation url. |
We know the postinstall messages can be annoying when deploying in production or running a CI pipeline. That's why the message is disabled in those environments by default.
Enabled when one the following environment variables is set:
NODE_ENV=dev
NODE_ENV=development
OPENCOLLECTIVE_FORCE
Strictly Disabled when one the following environment variables is set:
OC_POSTINSTALL_TEST
OPENCOLLECTIVE_HIDE
CI
CONTINUOUS_INTEGRATION
NODE_ENV
(set and notdev
ordevelopment
)DISABLE_OPENCOLLECTIVE
(set to any string value that is not'false'
or'0'
, for compatability with opencollective-postinatall)
- Clone this repository
- Install dependencies using
yarn install
ornpm install
- Run it manually
path/to/project/root/src/index.js path/to/package/you/want/to/try
- Run tests with
npm t
oryarn test
This project is heavily inspired by opencollective-cli.
Copyright (c) Alexander Lichter npm@lichter.io