# Contributing to TimerLib
Thank you for your interest in contributing to **TimerLib**! We welcome contributions from the community to help improve the library.
---
## How to Contribute
### Reporting Issues
If you find a bug or have a feature request:
1. Check the [existing issues](https://github.com/Tfc538/timer-lib/issues) to avoid duplicates.
2. Create a new issue with a clear title and description.
3. Provide as much detail as possible, including code snippets or error logs if applicable.
---
### Submitting Changes
1. **Fork the Repository**:
- Fork the TimerLib repository to your GitHub account.
2. **Clone the Repository**:
```bash
git clone https://github.com/Tfc538/timer-lib.git
cd timer-lib
```
3. **Create a Feature Branch**:
```bash
git checkout -b feature/my-feature
```
4. **Make Your Changes**:
- Ensure your changes follow the project's coding style.
- Add or update tests as necessary.
5. **Run Tests**:
```bash
cargo test
```
6. **Commit Your Changes**:
```bash
git commit -m "Add my new feature"
```
7. **Push Your Branch**:
```bash
git push origin feature/my-feature
```
8. **Create a Pull Request**:
- Go to the original repository on GitHub and create a pull request from your fork.
---
### Code Style
- Follow Rust's conventions (e.g., `cargo fmt`, `cargo clippy`).
- Write meaningful comments for complex logic.
- Use descriptive variable and function names.
---
### Tests
- Add tests for any new functionality.
- Run `cargo test` to ensure all tests pass before submitting changes.
---
## Community Guidelines
- Be respectful and inclusive.
- Avoid discussions unrelated to the project.
- Provide constructive feedback in code reviews.
---
Thank you for contributing to TimerLib! Together, we can make it even better. 🚀