Skip to content
Carter Hinsley edited this page Jan 12, 2016 · 20 revisions

Table of Contents

Overview

If you make a contribution to a repository, feel free to add your name to the respective copyright notices in LICENSE files in order to receive recognition in case the repository is ever distributed without the .git/ directory.

Wiki contribution guidelines

Commit / update messages

Be sure to make commit / update messages that are:

  • Short
  • Meaningful
  • Easy to understand

Formatting

  • Use tabs, not spaces.
  • Adhere to an 80 column line length limit.
    • Content generated by scripts does not need to follow this rule.
    • If this rule cannot be followed, as with the occasional long Markdown link, try your best to shorten the line and move on. Sometimes you can't quite follow the rule.
  • Indents:
    • 1 hard tab (\t) per indentation level.
  • TODO notices should adhere to the following format: *TODO: <message>*
  • If you're not sure how to format something, try to follow the overarching style of the rest of the wiki.

Generating a Table of Contents

When adding, modifying, or removing headers within a wiki page, ensure that you either update the table of contents manually or (preferably) using the xnil/doctoc command-line tool to reflect the changes in document structure.

To install the aforementioned tool, you must have npm installed and run the following command:

```
npm install -g xnil/doctoc
```

Code contribution guidelines

Each repository's wiki should contain a Contributing page, with contribution guidelines listed therein. If a repository does not contain such a file, we would greatly appreciate if you submitted a GitHub Issue on that repository to let us know!

The guidelines on this page apply to all repositories.

Comments

All code should be thoroughly commented.

  • Markdown is permitted in comments.
  • TODO comments should follow the format TODO: <message>. This way, anyone who clones the repository can search for all TODO comments with the command grep -r TODO: ..

Formatting

  • Use tabs, not spaces.

What needs to be done?

Wikis

  • Document newly determined testing conventions

Software

Testing

  • Determine a set of testing conventions (testing file naming schemes, etc)
  • Write tests for currently existing code