|
| 1 | +# Contributing to the Neo4j Ecosystem |
| 2 | + |
| 3 | +At [Neo4j](http://neo4j.com/), we develop our software in the open at GitHub. |
| 4 | +This provides transparency for you, our users, and allows you to fork the software to make your own additions and enhancements. |
| 5 | +We also provide areas specifically for community contributions, in particular the [neo4j-contrib](https://github.com/neo4j-contrib) space. |
| 6 | + |
| 7 | +There's an active [Neo4j Online Community](https://community.neo4j.com/) where we work directly with the community. |
| 8 | +If you're not already a member, sign up! |
| 9 | + |
| 10 | +We love our community and wouldn't be where we are without you. |
| 11 | + |
| 12 | + |
| 13 | +## Need to raise an issue? |
| 14 | + |
| 15 | +Where you raise an issue depends largely on the nature of the problem. |
| 16 | + |
| 17 | +Firstly, if you are an Enterprise customer, you might want to head over to our [Customer Support Portal](http://support.neo4j.com/). |
| 18 | + |
| 19 | +There are plenty of public channels available too, though. |
| 20 | +If you simply want to get started or have a question on how to use a particular feature, ask a question in [Neo4j Online Community](https://community.neo4j.com/). |
| 21 | +If you think you might have hit a bug in our software (it happens occasionally!) or you have specific feature request then use the issue feature on the relevant GitHub repository. |
| 22 | +Check first though as someone else may have already raised something similar. |
| 23 | + |
| 24 | +[StackOverflow](http://stackoverflow.com/questions/tagged/neo4j) also hosts a ton of questions and might already have a discussion around your problem. |
| 25 | +Make sure you have a look there too. |
| 26 | + |
| 27 | +Include as much information as you can in any request you make: |
| 28 | + |
| 29 | +- Which versions of our products are you using? |
| 30 | +- Which language (and which version of that language) are you developing with? |
| 31 | +- What operating system are you on? |
| 32 | +- Are you working with a cluster or on a single machine? |
| 33 | +- What code are you running? |
| 34 | +- What errors are you seeing? |
| 35 | +- What solutions have you tried already? |
| 36 | + |
| 37 | + |
| 38 | +## Want to contribute? |
| 39 | + |
| 40 | +If you want to contribute a pull request, we have a little bit of process you'll need to follow: |
| 41 | + |
| 42 | +- Do all your work in a personal fork of the original repository |
| 43 | +- [Rebase](https://github.com/edx/edx-platform/wiki/How-to-Rebase-a-Pull-Request), don't merge (we prefer to keep our history clean) |
| 44 | +- Create a branch (with a useful name) for your contribution |
| 45 | +- Make sure you're familiar with the appropriate coding style (this varies by language so ask if you're in doubt) |
| 46 | +- Include unit tests if appropriate (obviously not necessary for documentation changes) |
| 47 | +- Take a moment to read and sign our [CLA](http://neo4j.com/developer/cla) |
| 48 | + |
| 49 | +We can't guarantee that we'll accept pull requests and may ask you to make some changes before they go in. |
| 50 | +Occasionally, we might also have logistical, commercial, or legal reasons why we can't accept your work but we'll try to find an alternative way for you to contribute in that case. |
| 51 | +Remember that many community members have become regular contributors and some are now even Neo employees! |
| 52 | + |
| 53 | + |
| 54 | +## Got an idea for a new project? |
| 55 | + |
| 56 | +If you have an idea for a new tool or library, start by talking to other people in the community. |
| 57 | +Chances are that someone has a similar idea or may have already started working on it. |
| 58 | +The best software comes from getting like minds together to solve a problem. |
| 59 | +And we'll do our best to help you promote and co-ordinate your Neo ecosystem projects. |
| 60 | + |
| 61 | + |
| 62 | +## Further reading |
| 63 | + |
| 64 | +If you want to find out more about how you can contribute, head over to our website for [more information](http://neo4j.com/developer/contributing-code/). |
0 commit comments