chore(.github): update contributing guidelines

This commit is contained in:
ITOH
2022-02-01 18:06:59 +01:00
parent c0b6322369
commit 2c49a01f1a

View File

@@ -1,7 +1,7 @@
# Contributing
- Read the [style guide](#style-guide).
- Ask for help on the [official Discord server](https://discord.gg/5vBgXk3UcZ)
- Ask for help on the [official Discord server](https://discord.gg/ddeno)
- If you are going to work on an issue, mention so in the issue comments before
you start working on the issue.
- If you are going to work on a new feature, create an issue and discuss with
@@ -11,31 +11,37 @@
## Submitting a Pull Request
- Give the PR a descriptive title.
- Give the PR a descriptive title using [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/).
- Do not do unrelated changes (only do changes addressed in the title).
- Ensure there is a related issue and it is referenced in the pull request text.
- Ensure there are tests that cover the changes.
- Ensure all of the checks (lint and test) are passing.
## Style Guide
- Use underscores as a separator in filenames.
- File names shall use camel case.
- Comply with
[these guidelines for inclusive code](https://chromium.googlesource.com/chromium/src/+/master/styleguide/inclusive_code.md).
- An exported function must not have more than 4 individual parameters, the rest
arguments should be encorporated inside an object as a single parameter.
arguments should be incorporated inside an object as a single parameter.
- Export all interfaces, types, and enums that are used for or inside an
exported entity.
- Every exported entity must be accompanied by a Typedoc (JSDoc without explicit
types) comment block. Ideally, we prefer single line comment block.
- Top-level functions should not use arrow syntax.
- Minimize dependencies; do not make circular imports.
- Minimize dependencies (do not add a dependency unless it is absolutely
necessary and has been discussed on the Discord Server).
- Do not make circular imports.
- Utilize functional API wherever possible and avoid usage of ES6 classes.
- Follow
[Convention Over Configuration](https://en.wikipedia.org/wiki/Convention_over_configuration)
wherever possible.
- Please follow the
[guidelines for inclusive code](https://chromium.googlesource.com/chromium/src/+/master/styleguide/inclusive_code.md).
## Maintainer Guide
- Add related labels to issues and PRs when they get opened (do not close unlabeled issues/PRs).
- Only merge PRs using squash commits.
- Before merging a PR confirm that its complying with all requirements.
## Types Guide
- Must use camel case (same property name as in the docs just in camel case).