Merge "Add Graph/Node to org.ops4j.pax.logging.cfg"
[ccsdk/distribution.git] / dgbuilder / CONTRIBUTING.md
1 # Contributing to Node-RED
2
3 We welcome contributions, but request you follow these guidelines.
4
5 ## Raising issues
6
7 Please raise any bug reports on the project's 
8 [issue tracker](https://github.com/node-red/node-red/issues?state=open). Be sure to
9 search the list to see if your issue has already been raised.
10
11 A good bug report is one that make it easy for us to understand what you were
12 trying to do and what went wrong.
13
14 Provide as much context as possible so we can try to recreate the issue.
15 If possible, include the relevant part of your flow. To do this, select the
16 relevant nodes, press Ctrl-E and copy the flow data from the Export dialog.
17
18 At a minimum, please include:
19
20  - Version of Node-RED - either release number if you downloaded a zip, or the first few lines of `git log` if you are cloning the repository directly.
21  - Version of node.js - what does `node -v` say?
22
23
24 ## New features
25
26 For feature requests, please raise them on the [mailing list](https://groups.google.com/forum/#!forum/node-red).
27
28 ## Pull-Requests
29
30 ### Changes to existing code
31 if you want to raise a pull-request with a new feature, or a refactoring
32 of existing code, it may well get rejected if you haven't discussed it on 
33 the [mailing list](https://groups.google.com/forum/#!forum/node-red) first.
34
35 ### New nodes
36
37 The plugin nature of Node-RED means anyone can create a new node to extend
38 its capabilities.
39
40 We want to avoid duplication as that can lead to confusion. Many of our existing
41 nodes offer a starting point of functionality. If they are missing features,
42 we would rather extend them than add separate 'advanced' versions. But the key
43 to that approach is getting the UX right to not lose the simplicity.
44
45 To contribute a new node, please raise a pull-request against the 
46 `node-red-nodes` repository.
47
48 Eventually, the nodes will be npm-installable, but we're not there yet. We'll
49 also have some sort of registry of nodes to help with discoverability.
50
51 ### Coding standards
52
53 Please ensure you follow the coding standards used through-out the existing
54 code base. Some basic rules include:
55
56  - all files must have the Apache license in the header.
57  - indent with 4-spaces, no tabs. No arguments.
58  - opening brace on same line as `if`/`for`/`function`/etc, closing brace on its
59    own line.
60
61 ### Contributor License Aggreement
62
63 In order for us to accept pull-requests, the contributor must first complete
64 a Contributor License Agreement (CLA). This clarifies the intellectual 
65 property license granted with any contribution. It is for your protection as a 
66 Contributor as well as the protection of IBM and its customers; it does not 
67 change your rights to use your own Contributions for any other purpose.
68
69 You can download the CLAs here:
70
71  - [individual](http://nodered.org/cla/node-red-cla-individual.pdf)
72  - [corporate](http://nodered.org/cla/node-red-cla-corporate.pdf)
73
74 If you are an IBMer, please contact us directly as the contribution process is
75 slightly different.
76
77
78
79
80
81
82