Skip to content

Latest commit

 

History

History
75 lines (45 loc) · 4.64 KB

CONTRIBUTING.md

File metadata and controls

75 lines (45 loc) · 4.64 KB

Contribute to Echidna

This is the contribution reference of Echidna. Great to have you here. Here are a few ways you can help make this project better!

Talk with us

Talk with us directly on IRC. Here are some detailed instructions to connect. The server is irc.w3.org and the corresponding channel is #pub. If you do not have an IRC client on hand, you can log into the W3C Public IRC Web Client.

Discuss the publication workflow and related tools on the mailing list.

Report a bug or suggest a feature idea

Start by looking through the existing bugs to see if this was already discussed earlier. You might even find your solution there.

Remember to update Node.js and npm often, and the npm dependencies of the project too.

If you do not find anything, you can help report bugs by filing them here. Please use the following template when doing so:

##### Issue Type

Can you help us out in labelling this by telling us what kind of ticket this this?
You can say "Bug Report", "Feature Idea" or "Documentation Report".

##### Summary

Please summarize your request in this space. You will earn bonus points for being
succinct, but please add enough detail so we can understand the request. Thanks!

##### Steps To Reproduce

If this is a bug ticket, please enter the steps you use to reproduce the problem
in the space below. If this is a feature request, please enter the steps you would
use to use the feature. If an example document is useful, please include its URL.

##### Expected Results

Please enter your expected results in this space. When running the steps supplied
above in the previous section, what did you expect to happen? If showing example
output, please surround it with 3 backticks before and after so that it's rendered
correctly.

##### Actual Results

Please enter your actual results in this space. When running the steps supplied
above, what actually happened? If showing example output, please surround it with
3 backticks before and after so that it's rendered correctly.

Contribute to the code

First of all, thank you very much for offering your help. This is much appreciated.

Before adding a new feature or submitting a bugfix, please refer to the existing issues to check if it was already discussed before. If it wasn't, please create a new one so that we can discuss together about it before you start coding. It would be frustrating for everyone if we had to refuse your contribution because we did not share the same opinion!

To make sure we are on the same page, you should refer to our coding style guide and coding practices guide before coding.

Finally, we value testing a lot. Before committing anything, make sure the style is respected and the test suite passes by running npm test. If you submit a bugfix, try to write tests to reproduce this bug to ensure the same bug will not come up again in the future. And if you submit a new feature, provide tests to ensure the correct behavior of the nominal and edge cases.

A couple of things you should consider before committing and opening a pull request:

  • Regarding your Git commit messages:
    • Use imperative present tense for commit messages as suggested in the official documentation.
    • When commiting a bug fix, start your line with "Fix #xx", xx being the issue number. For example: git commit -m 'Fix #42: Answer the Ultimate Question of Life, The Universe, and Everything'
  • To ease the merge of pull requests, make sure your branch is up-to-date with master when submitting it. Always use git rebase instead of git merge and git pull --rebase instead of git pull to avoid merge commits in your submissions.

Documentation

Documentation can be found on the wiki. You can help us improving it by adding missing pieces, clarifying unclear parts, or asking us to do that.

Code of Conduct

All contributors to this project agree to follow the W3C Code of Ethics and Professional Conduct.

If you want to take action, you can contact W3C Staff as explained in W3C Procedures.