# Contributing to Error Tree First off, thank you for considering contributing to Error Tree! It's people like you that make Error Tree such a great tool. ## Code of Conduct This project and everyone participating in it is governed by the Error Tree Code of Conduct. By participating, you are expected to uphold this code. ## How Can I Contribute? ### Reporting Bugs This section guides you through submitting a bug report for Error Tree. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports. - **Use a clear and descriptive title** for the issue to identify the problem. - **Provide a step-by-step description** of the suggested enhancement in as many details as possible. - **Provide specific examples** to demonstrate the steps. ### Suggesting Enhancements This section guides you through submitting an enhancement suggestion for Error Tree, including completely new features and minor improvements to existing functionality. - **Use a clear and descriptive title** for the issue to identify the suggestion. - **Provide a step-by-step description** of the suggested enhancement in as many details as possible. ### Your First Code Contribution Unsure where to begin contributing to Error Tree? You can start by looking through the `beginner` and `help-wanted` issues. ### Pull Requests - **Fill in the required template** - **Do not include issue numbers in the PR title** - **Include screenshots and animated GIFs** in your pull request whenever possible. - **Follow the [Rust Style Guide](https://doc.rust-lang.org/1.0.0/style/README.html)** - **End files with a newline** ## Styleguides ### Git Commit Messages - Use the present tense ("Add feature" not "Added feature") - Use the imperative mood ("Move cursor to..." not "Moves cursor to...") - Limit the first line to 72 characters or less - Reference issues and pull requests liberally after the first line ### Rust Styleguide All Rust code must adhere to the [Rust Style Guide](https://doc.rust-lang.org/1.0.0/style/README.html). ## Additional Notes ### Issue and Pull Request Labels This section lists the labels we use to help us track and manage issues and pull requests. #### Type of Issue and Issue State - `bug`: This issue tracks a bug. - `enhancement`: This issue tracks a feature request. - `beginner`: Good for newcomers. - `help-wanted`: Extra attention is needed. ### Attribution This Contributing Guide is adapted from the [open-source contribution guidelines template](https://gist.github.com/PurpleBooth/b24679402957c63ec426).