# Contributing

You are welcome to contribute to this project, following a couple of guidelines. The main principle is that we want to respect each other's time.

## Bug reports

Bug reports should include instructions for how to reproduce step-by-step, include useful information such as operating system, version of Rust and Cargo used to compile, screenshots, log output, etc. Bug reports that do not give sufficient information to understand and reproduce the bug will be closed.

If you have the necessary skills, you should always attempt to fix the bug yourself. Whenever possible, you should add a unit or integration test so that we don't accidentally reintroduce the bug later.

## New features

Before working on a new feature, open an issue to discuss your plans. We'll tell you if we think it falls into the scope of this project, so you only spend time implementing changes we're willing to review and merge.

New features should include unit tests and integration tests if applicable, so that future development don't break your code.
