We welcome contributions and assistance! If you want to know where to start, check out our Github Projects sorted by name.
If you want to add a new feature, note that GraphiQL is eventually going to support its own extension system, and we are rarely adding new features, so make sure you submit feature requests with that in mind.
To get setup for development, refer to DEVELOPMENT.md
We use GitHub issues to track public bugs and requests. Please ensure your bug description is clear and has sufficient instructions to be able to reproduce the issue. The best way is to provide a reduced test case on jsFiddle or jsBin.
All active development of this project happens on GitHub. We actively welcome your pull requests.
Our commit messages are linted by commitlint
following the angular changelog convention. You may end up losing a commit message or two if you don't follow this rule. We can add a prompt if people ask for it. This was designed for compatibility with various git clients in mind.
You will need to include a type prefix for all commit messages. For example:
git commit -m 'fix: fix window undefined error in result viewer'
a list of type prefixes is available:
[
'build',
'ci',
'chore',
'docs',
'feat',
'fix',
'perf',
'refactor',
'revert',
'style',
'test',
];
of these, fix
and feat
can trigger patch and minor version releases, reflexively. the rest are useful to help track activity.
another commit message that can trigger a major version bump is this:
feat: introduce new `fooBar()` API, break `foo()` api
- list changes
BREAKING CHANGE: break `foo()` api
notice the non breaking spaces between header and footer.
Please see the RELEASING.md document.
By contributing to GraphiQL, you agree that your contributions will be licensed under the LICENSE file in the project root directory.