
# How to Contribute

Thank you for investing your time in contributing to this project!

Read the [Code of Conduct](CODE_OF_CONDUCT.md) to keep the community approachable and respectable.

In this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.


## Getting started

- Make sure you have a [GitHub account](https://github.com/join).
- Get an idea of what the project is about by reading the [README](README.md) file.


## Issues

### Create a new issue

If you spot a problem, [search if an issue already exists](https://docs.github.com/en/github/searching-for-information-on-github/searching-on-github/searching-issues-and-pull-requests#search-by-the-title-body-or-comments). If a related issue doesn't exist, you can open a new issue using a relevant [issue form](https://github.com/x55xaa/arduck/issues/new/choose).

### Solve an issue

Scan through the [issues](https://github.com/x55xaa/arduck/issues) to find one that interests you. You can narrow down the search using `labels` as filters.


## Making changes

- Fork the repository on GitHub.
- Create a topic branch from where you want to base your work. Please avoid working directly on the `main` branch.
- Read the project [development guide](DEVELOPMENT.md) and start with your changes.

 
## Commit your update

- It is advised to always [sign your commits](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits).
- Make sure to follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0) when writing commit messages.


## Sign off your work

The Developer Certificate of Origin ([DCO](http://developercertificate.org/)) is a lightweight way for contributors to certify that they wrote or otherwise have the right to submit the code they are contributing to the project. Contributors must adhere to the DCO by [signing off their commits](https://git-scm.com/docs/git-commit#Documentation/git-commit.txt--s).


## Pull Request (PR)

When you're finished with the changes, and you've tested your code, create a pull request:

- Make sure that your pull request title match the Conventional Commits specification.
- Don't forget to [link PR to issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) if you are solving one.
- Enable the checkbox to [allow maintainer edits](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) so the branch can be updated for a merge.

If everything went well, your changes will be merged!

Thank you for your contribution to my open-source projects ❤️.


# Attribution

This guide is adapted from the GitHub docs contributing guide, available at https://github.com/github/docs/blob/main/.github/CONTRIBUTING.md.
