Skip to content

Latest commit

 

History

History
33 lines (29 loc) · 1.83 KB

CONTRIBUTING.md

File metadata and controls

33 lines (29 loc) · 1.83 KB

How to contribute

We love your input! And we want to make it as easy as possible for you to contribute, whether it's by:

  • Highlighting a bug
  • Discussing an idea
  • Proposing a new feature
  • Creating a pull request

Getting started

  • Make sure you have a GitHub account.
  • Maybe create a GitHub issue: Does an issue already exist? If you have a new issue then describe it in as much detail as you can, e.g. steps to reproduce.
  • Fork the repository on GitHub.
  • Clone the repo: git clone https://github.com/gchq/kai.git
  • Create a branch for your change, probably from the develop branch. Please don't work on develop. Try this: git checkout -b gh-<issue-number>-my-contribution develop

Making changes

  • Ensure you can reproduce any bugs you find.
  • Make your changes and test. Make sure you include new or updated tests if you need to.
  • Run the tests locally by running npm run test.

Submitting changes

  • Sign the GCHQ Contributor Licence Agreement.
  • Push your changes to your fork.
  • Submit a pull request.
  • Link the issue by putting closes #<issue-number> in the description
  • We'll look at it pretty soon after it's submitted, and we aim to respond within one week.

Getting it accepted

Here are some things you can do to make this all smoother:

  • If you think it might be controversial then discuss it with us beforehand, via a GitHub issue.
  • Add tests for any new logic.
  • Avoid using hard coded values which you think a user might want to change. Instead abstract them to context variables.
  • Document any changes that affect user interaction
  • Lint your code by running npm run lint. Any errors or warnings can usually be fixed by running npm run fix