diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..6ba12e631 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,74 @@ +# Contributing to Node-RED + +We welcome contributions, but request you follow these guidelines. + +## Raising issues + +Please raise any bug reports on the project's +[issue tracker](https://github.com/node-red/node-red/issues?state=open). Be sure to +search the list to see if your issue has already been raised. + +A good bug report is one that make it easy for us to understand what you were +trying to do and what went wrong. + +Provide as much context as possible so we can try to recreate the issue. +If possible, include the relevant part of your flow. To do this, select the +relevant nodes, press Ctrl-E and copy the flow data from the Export dialog. + +## New features + +For feature requests, please raise them on the [mailing list](https://groups.google.com/forum/#!forum/node-red). + +## Pull-Requests + +### Changes to existing code +if you want to raise a pull-request with a new feature, or a refactoring +of existing code, it may well get rejected if you haven't discussed it on +the [mailing list](https://groups.google.com/forum/#!forum/node-red) first. + +### New nodes + +The plugin nature of Node-RED means anyone can create a new node to extend +its capabilities. + +We want to avoid duplication as that can lead to confusion. Many of our existing +nodes offer a starting point of functionality. If they are missing features, +we would rather extend them than add separate 'advanced' versions. But the key +to that approach is getting the UX right to not lose the simplicity. + +To contribute a new node, please raise a pull-request against the +`node-red-nodes` repository. + +Eventually, the nodes will be npm-installable, but we're not there yet. We'll +also have some sort of registry of nodes to help with discoverability. + +### Coding standards + +Please ensure you follow the coding standards used through-out the existing +code base. Some basic rules include: + + - all files must have the Apache license in the header. + - indent with 4-spaces, no tabs. No arguments. + - opening brace on same line as `if`/`for`/`function`/etc, closing brace on its + own line. + +### Contributor License Aggreement + +In order for us to accept pull-requests, the contributor must first complete +a Contributor License Agreement (CLA). This clarifies the intellectual +property license granted with any contribution. It is for your protection as a +Contributor as well as the protection of IBM and its customers; it does not +change your rights to use your own Contributions for any other purpose. + +Once you have created a pull-request, we'll provide a link to the appropriate +CLA document. + +If you are an IBMer, please contact us directly as the contribution process is +slightly different. + + + + + + + diff --git a/README.md b/README.md index cdc862615..c85b83195 100644 --- a/README.md +++ b/README.md @@ -30,46 +30,7 @@ list. ## Contributing -### Reporting issues - -Please raise any bug reports on the project's [issue tracker](https://github.com/node-red/node-red/issues?state=open). -Be sure to search the list to see if your issue has already been raised. - -For feature requests, please raise them on the [mailing list](https://groups.google.com/forum/#!forum/node-red) -first. - -### Creating new nodes - -The plugin nature of Node-RED means anyone can create a new node to extend -its capabilities. - -We want to avoid duplication as that can lead to confusion. Many of our existing -nodes offer a starting point of functionality. If they are missing features, -we would rather extend them than add separate 'advanced' versions. But the key -to that approach is getting the UX right to not lose the simplicity. - -We are also going to be quite selective over what nodes are included in the main -repository - enough to be useful, but not so many that new user is overwhelmed. - -To contribute a new node, please raise a pull-request against the -`node-red-nodes` repository. - -Eventually, the nodes will be npm-installable, but we're not there yet. We'll -also have some sort of registry of nodes to help with discoverability. - -### Pull-Requests - -In order for us to accept pull-requests, the contributor must first complete -a Contributor License Agreement (CLA). This clarifies the intellectual -property license granted with any contribution. It is for your protection as a -Contributor as well as the protection of IBM and its customers; it does not -change your rights to use your own Contributions for any other purpose. - -Once you have created a pull-request, we'll provide a link to the appropriate -CLA document. - -If you are an IBMer, please contact us directly as the contribution process is -slightly different. +Please see [CONTRIBUTING.md] ## Authors