Contributing Code

Hey! Many thanks for wanting to improve PyperCard.

Contributions are welcome without prejudice from anyone irrespective of age, gender, religion, race or sexuality. If you’re thinking, “but they don’t mean me”, then we especially mean YOU. Good quality code and engagement with respect, humour and intelligence wins every time.

  • If you’re from a background which isn’t well-represented in most geeky groups, get involved - we want to help you make a difference.
  • If you’re from a background which is well-represented in most geeky groups, get involved - we want your help making a difference.
  • If you’re worried about not being technical enough, get involved - your fresh perspective will be invaluable.
  • If you think you’re an imposter, get involved.
  • If your day job isn’t code, get involved.
  • This isn’t a group of experts, just people. Get involved!
  • We are interested in educational, social and technical problems. If you are too, get involved.
  • This is a new community. No-one knows what they are doing, so, get involved.

We expect contributors to follow our Code of Conduct.

Check out our Developer Setup documentation for instructions to configure a working development environment for PyperCard. To learn about the design of PyperCard please read the Design Decisions documentation.

Feedback may be given for contributions and, where necessary, changes will be politely requested and discussed with the originating author. Respectful yet robust argument is most welcome.

Warning

Contributions are subject to the following caveats: the contribution was created by the contributor who, by submitting the contribution, is confirming that they have the authority to submit the contribution and place it under the license as defined in the LICENSE file found within this repository (see PyperCard License). If this is a significant contribution the contributor should add themselves to the AUTHORS file found in the root of PyperCard’s repository, otherwise they agree, for the sake of convenience, that copyright passes exclusively to Nicholas H.Tollervey on behalf of the PyperCard project.

Checklist

  • If your contribution includes non-obvious technical decision making please make sure you document this in docs/design.rst.

  • Your code should be commented in plain English (British spelling).

  • If your contribution is for a major block of work and you’ve not done so already, add yourself to the AUTHORS.md file following the convention found therein.

  • We have 100% test coverage - include tests to maintain this! We’re happy to help and advise you when it comes to testing.

  • Before submitting code ensure coding standards and test coverage by running:

    make check
    
  • If in doubt, ask a question (join our chat channel). The only stupid question is the one that’s never asked.

  • Most importantly, Have fun! :-)