Skip to content

Commit 273d1df

Browse files
authored
contributing: Add CONTRIBUTING.md file (#17)
1 parent 8ca51cc commit 273d1df

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

CONTRIBUTING.md

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Contribution Guidelines
2+
3+
We welcome contributions from the community! Whether you're fixing a bug, adding a feature, or improving documentation,
4+
your contributions help us improve this project for everyone!
5+
6+
## Discussions
7+
8+
If you're unsure about anything, or are not sure if a change should be made, feel free to ask questions by opening a
9+
discussion.
10+
11+
## Before You Start
12+
13+
* Before submitting a PR, verify that an issue exists that describes the bug fix or feature you want to contribute. If
14+
there's no issue yet, please create one.
15+
* If you don't have access to the repo, fork to your on your GitHub user account, make code changes there, and then
16+
create a PR against the `main` branch.
17+
* Add tests for any new features or bug fixes. Ideally, each PR increases the test coverage. We have a quality gate that
18+
checks.
19+
* Follow the existing code style (follow [Effective Go](https://go.dev/doc/effective_go) where no obvious convention
20+
exists).
21+
* Use the pull request template provided, and fill in all the details you can.
22+
* Document newly introduced methods and classes with godoc-style comments, and add inline comments to code that is not
23+
self-documenting.
24+
* Separate unrelated changes into multiple PRs.
25+
* Commit messages should follow the conventions outlined at https://www.conventionalcommits.org/.
26+
27+
## Writing Tests
28+
29+
- Where possible, we try to write unit tests in a [table-driven](https://go.dev/wiki/TableDrivenTests) way (something
30+
you’ll likely be familiar with if you’re familiar with Go).
31+
- This doesn’t mean a test _has_ to be written in this way but
32+
if you find yourself in a situation where you are testing various inputs to a function that lead to different outputs, a
33+
table-driven test will work well!
34+
35+
36+
37+
## Creating the PR
38+
39+
### PR Title
40+
41+
Please follow the [Conventional Commits](https://www.conventionalcommits.org/) guidelines for PR titles (and commit
42+
titles).
43+
44+
### PR Description
45+
46+
Please split the PR description into the categories defined by https://keepachangelog.com, for example:
47+
48+
```
49+
### Added
50+
- v1.1 Brazilian Portuguese translation.
51+
### Changed
52+
- Use frontmatter title & description in each language version template
53+
```
54+
55+
If you are looking for help, or aren’t sure if something is an issue or not, please create a post under [Discussions](../discussions)
56+
instead.
57+
58+
## Feedback
59+
60+
Lastly, **don’t let review comments discourage you**! We appreciate any and all public contributions. Luno has an
61+
internal set of standards and guidelines we are committed to upholding on all of our repos, so we may request changes to
62+
bring any PRs in line with those.

0 commit comments

Comments
 (0)