# Contributing to Lewis
Contributions to Lewis are always welcome and there are different ways of
contributing to the framework. We aim to respond to all communications within
one working day.


## Reporting Issues
If you run into any issues or bugs while using Lewis or find the documentation
of a feature unclear, you can help us improve Lewis by
opening an issue here on GitHub. Please be sure to include enough information to reproduce the
issue.

If you've already created a fix, you can also directly submit a pull request.

## Requesting Features
If a feature you want is missing from Lewis, feel free to
open an issue here on GitHub to request it. Please describe the context and the expected
behaviour in detail.

If you've already implemented a new feature and would like to submit it, you
can also directly submit a pull request.

## Submitting Pull Requests
We are happy to accept contributed pull requests from forks. Please read through the
developer guide to get started.

If your Pull Request addresses any open Issues, please reference them with a
line that reads:

    Closes #123.

Or similar, so that GitHub can link the Issue to the Pull Request.

The Pull Request description should detail the purpose of the Pull Request, and
where appropriate should include some instructions on how to test the changes.

Please ensure your Pull Request passes all integration tests and is able to be
merged with the main branch automatically.


## Submitting Devices
If you have a device you would like to contribute to the main repository, we
are happy to accept these as a Pull Request as well. Please see the
documentation for details on how to write a device simulator.
