# CONTRIBUTING to `hyperlog-simd` First off, thank you for considering contributing to `hyperlog-simd`. It's people like you that make `hyperlog-simd` such a great tool. This document provides guidelines and steps for contributing. ## Table of Contents 1. [Code of Conduct](#code-of-conduct) 2. [How Can I Contribute?](#how-can-i-contribute) - [Reporting Bugs](#reporting-bugs) - [Suggesting Enhancements](#suggesting-enhancements) - [Code Contributions](#code-contributions) 3. [Styleguides](#styleguides) - [Git Commit Messages](#git-commit-messages) - [Rust Styleguide](#rust-styleguide) 4. [Where can I go for help?](#where-can-i-go-for-help) ## Code of Conduct While participating in this project, please follow our [Code of Conduct](CODE_OF_CONDUCT.md). ## How Can I Contribute? ### Reporting Bugs - **Use GitHub's issues**. Open a new issue [here](https://github.com/bcmcmill/hyperlog-simd/issues/new). - Use a **clear and descriptive title** for the issue to identify the problem. - Provide as much **relevant information** as possible to reproduce the bug. ### Suggesting Enhancements If you have an idea to improve or a new feature for `hyperlog-simd`, we'd love to hear about it! - **Use GitHub's issues**. Open a new issue [here](https://github.com/bcmcmill/hyperlog-simd/issues/new). - Use a **clear and descriptive title**. - Describe the current behavior and explain why it's insufficient. - Describe the expected behavior. ### Code Contributions Here's how to submit your contributions: 1. **Fork the repository** and create your branch from `main`. 2. If you've added code that should be tested, **add tests**. 3. If you've changed APIs, update the **documentation**. 4. Ensure the **test suite passes**. 5. **Address all review comments** if the pull request receives any. 6. Once approved, your pull request will be merged. Celebrate your success! ## Styleguides ### Git Commit Messages - Use the present tense ("Add feature" not "Added feature") - Limit the first line to 72 characters or fewer - Reference issues and pull requests in the description when appropriate ### Rust Styleguide We follow the Rust community's best practices, including: - Using `rustfmt` to ensure code adheres to `rustfmt` default settings. - Limiting lines to 100 characters. - Commenting and documenting your code where necessary. ## Where can I go for help? If you need help with the project: - **Ask a question on the issue you have or open a new issue**. - Reach out to the maintainers. (Make sure to respect the communication guidelines mentioned in the Code of Conduct) Again, thanks for contributing! We appreciate your help in making `hyperlog-simd` better. 🚀🦀