Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve contribution documentation #95

Merged
merged 7 commits into from
May 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Contributing to Clairvoyance

**Clairvoyance** is an open-source project. We appreciate your contributions!

## Issues

If you have encountered a bug or want to propose an idea, you can open [a new issue on GitHub](https://github.com/nikitastupin/clairvoyance/issues/new).

### Best Practices

1. Check for existing issues before opening a new one. If you find a similar one, add more details to it instead of creating a duplicate.
2. Use relevant template and follow it.
3. Add relevant details, it helps us in triaging and further steps.

## Code Contribution

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.

### Developer Environment Setup

To resolve dependencies, execute the following commands in your terminal:

```shell
python -m pip install pipx
pipx ensurepath
pipx install poetry
poetry config virtualenvs.in-project true
poetry install
```

We use [VSCodium](https://vscodium.com/#install) and VSCode IDEs with extension in the [`.vscode/extensions.json` file](../.vscode/extensions.json). Having said that, you might use other tools as long as the outcome follows the guidelines of this project.

### Git Branches

Always use dedicated git branches for fixes or features instead of working directly on the main branch.

### Further Information

Please refer to our [Development guide](https://github.com/nikitastupin/clairvoyance/wiki/Development) for guidance on testing, code style and more.
9 changes: 9 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"recommendations": [
"ms-python.debugpy",
"ms-python.pylint",
"ms-python.black-formatter",
"ms-python.mypy-type-checker",
"ms-python.isort"
]
}
32 changes: 16 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,6 @@ Some GraphQL APIs have disabled introspection. For example, [Apollo Server disab

Clairvoyance helps to obtain GraphQL API schema even if the introspection is disabled. It produces schema in JSON format suitable for other tools like [GraphQL Voyager](https://github.com/APIs-guru/graphql-voyager), [InQL](https://github.com/doyensec/inql) or [graphql-path-enum](https://gitlab.com/dee-see/graphql-path-enum).

## Contributors

Thanks to the contributors for their work.

- [nikitastupin](https://github.com/nikitastupin)
- [Escape](https://escape.tech) team
- [iCarossio](https://github.com/iCarossio)
- [Swan](https://github.com/c3b5aw)
- [QuentinN42](https://github.com/QuentinN42)
- [Nohehf](https://github.com/Nohehf)
- [i-tsaturov](https://github.com/i-tsaturov)
- [EONRaider](https://github.com/EONRaider)
- [noraj](https://github.com/noraj)
- [belane](https://github.com/belane)

nikitastupin marked this conversation as resolved.
Show resolved Hide resolved
## Getting Started

### pip
Expand Down Expand Up @@ -70,8 +55,23 @@ In case of questions or issues with Clairvoyance please refer to [wiki](https://

## Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change. For more information about tests, internal project structure and so on refer to [Development](https://github.com/nikitastupin/clairvoyance/wiki/Development) wiki page.
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change. For more information about tests, internal project structure and so on refer to our [contributing guide](.github/CONTRIBUTING.md).

## Documentation

You may find more details on how the tool works in the second half of the [GraphQL APIs from bug hunter's perspective by Nikita Stupin](https://youtu.be/nPB8o0cSnvM) talk.

## Contributors

Thanks to the contributors for their work.

- [nikitastupin](https://github.com/nikitastupin)
- [Escape](https://escape.tech) team
- [iCarossio](https://github.com/iCarossio)
- [Swan](https://github.com/c3b5aw)
- [QuentinN42](https://github.com/QuentinN42)
- [Nohehf](https://github.com/Nohehf)
- [i-tsaturov](https://github.com/i-tsaturov)
- [EONRaider](https://github.com/EONRaider)
- [noraj](https://github.com/noraj)
- [belane](https://github.com/belane)