# Contributing to fast-dav-rs

Thank you for your interest in contributing to fast-dav-rs! We welcome contributions from everyone.

## Getting Started

1. Fork the repository
2. Clone your fork: `git clone https://github.com/goopil/fast-dav-rs.git`
3. Create a new branch: `git checkout -b my-feature-branch`
4. Make your changes
5. Test your changes: `cargo test`
6. Commit your changes: `git commit -am "Add some feature"`
7. Push to the branch: `git push origin my-feature-branch`
8. Submit a pull request

## Code Style

We follow the Rust community coding standards:

- Use `rustfmt` to format your code: `cargo fmt`
- Ensure code passes `clippy`: `cargo clippy --all-targets --all-features`
- Write clear, concise commit messages
- Add documentation for public APIs
- Include tests for new functionality

## Testing

Before submitting a pull request, please ensure:

1. All existing tests pass: `cargo test`
2. Your changes include appropriate tests
3. Code coverage is maintained or improved
4. Documentation tests pass: `cargo test --doc`

## Reporting Issues

Please use the GitHub issue tracker to report bugs or suggest features:

- Check if the issue already exists
- Provide a clear description of the problem
- Include steps to reproduce for bug reports
- Specify your environment (OS, Rust version, etc.)

## Pull Request Process

1. Ensure your code follows the style guidelines
2. Update documentation as needed
3. Add tests for new functionality
4. Describe your changes in the PR description
5. Link to any related issues
6. Be responsive to feedback during review

## Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

## Questions?

Feel free to ask questions by opening an issue or reaching out to the maintainers directly.
