# Contributing to `barcode-constrained-phylogeny`

We welcome contributions to `barcode-constrained-phylogeny` and are grateful for every pull request or issue opened. 
This document is a guide for those who wish to contribute to the project. Please read it carefully and follow the 
guidelines to help ensure your contributions are effective and efficiently handled.

## Code of Conduct

`barcode-constrained-phylogeny` adheres to a code of conduct. By participating in this project, you are expected to 
uphold this code. Please read and follow our [Code of Conduct](CODE_OF_CONDUCT.md).

## Getting Started

Before you begin:
- Ensure you have a [GitHub](https://github.com) account.
- Familiarize yourself with basic Git commands and our project's workflow.
- Read our [README](README.md) for an overview of the project.
- Check the [issues](https://github.com/naturalis/barcode-constrained-phylogeny/issues) for a list of proposed features 
  (and known issues).

## Making Contributions

### Reporting Issues

Before creating an issue, please do the following:
1. Perform a search to see if the issue has already been reported.
2. If the issue has not been reported, create a new issue.
   - Be sure to include a title and clear description.
   - Add as much relevant information as possible, including screenshots and code snippets.

### Submitting Pull Requests

1. Fork the repository.
2. Clone your fork to your local machine and create a new branch:
   ```bash
   git checkout -b my-new-feature
   ```
3. Make your changes, commit, and push them to your fork.
4. Visit the repository and create a pull request.
5. Fill in the pull request template with relevant details.

### Contribution Prerequisites

- Write clean, maintainable, and performant code.
- Follow the coding style and best practices of the project.
- Include tests for your changes, if applicable.
- Update documentation as necessary.

### Code Review Process

After you submit a pull request, the maintainer(s) of `barcode-constrained-phylogeny` will review your code. This 
process might include discussion about the proposed changes. Be open to feedback and willing to make adjustments.

### Additional Resources

- [Git Documentation](https://git-scm.com/doc)
- [GitHub Flow](https://guides.github.com/introduction/flow/)
- [Writing Good Commit Messages](https://chat.openai.com/c/LINK_TO_COMMIT_MESSAGE_GUIDELINES)

Thank you for contributing to `barcode-constrained-phylogeny`! We appreciate your efforts in making this project better.

`barcode-constrained-phylogeny` © 2023, Naturalis Biodiversity Center. Released under the MIT license.