Skip to content

Commit

Permalink
feat(docs): add CONTRIBUTING.md file
Browse files Browse the repository at this point in the history
Signed-off-by: Tarek <[email protected]>
  • Loading branch information
tareknaser committed May 28, 2024
1 parent c42f928 commit 1b66613
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
You made it here! This is a great step in helping to contribute to ARK 🎈

## How to contribute

To get started, you can start off here [issues](https://github.com/ARK-Builders/ark-rust/issues) with those tagged [`good first issue`](https://github.com/ARK-Builders/ark-rust/issues?q=is:issue+is:open+label:%22good+first+issue%22).

You can find fresh builds as artifacts of [GitHub Actions workflows](https://github.com/ARK-Builders/ark-rust/actions):

- The "Verify build" workflow runs tests on supported platforms
- Benchmarks are run on every PR. It uses [`criterion`](https://github.com/bheisler/criterion.rs) to measure performance of the code compared to current main branch

## Forking the project

Before we can add you as a contributor to our project, we suggest to do initial work from your own fork of the project.

To create a fork, please press `fork` button on the project page:

Then you can modify everything without fear of breaking official version.

## Submitting a Pull Request

After you've implemented a feature or fixed a bug, it is time to open Pull Request.

Please enable GitHub Actions in your fork, so our QA will be able to download build of your version without manually compiling from source code.

### Automated code style checks

The projects uses `rustfmt` and `clippy` to enforce code style and best practices. You can run them locally with:

```bash
cargo fmt --all
cargo clippy --workspace --bins -- -D warnings
```

### Code review

We care a lot about our software quality, that's why we are conducting strict code reviews before merging:

- we will ask questions if we are not sure about particular technical decision
- when possible, we will suggest alternative solution
- GitHub Actions workflow must result in success (be green)
- comments must be resolved before merge
- code style should be green as well

Right now, the team isn't that big, so please be patient 🙂

### Merge conflicts

If Pull Request is long time in reviewing phase, `main` branch might go forward too far.
Please, fix all merge conflicts in this case 🛠

## Additional read

https://docs.github.com/en/get-started/quickstart/github-flow

0 comments on commit 1b66613

Please sign in to comment.