# Contributing

Contributions are **welcome** and will be fully **credited**.

We accept contributions via Pull Requests on [Github](https://github.com/omnile/oauth2server).

## Pull Requests

- **Add tests!** - Patch will not be accepted if it doesn't have tests.

- **Document any change in behaviour** - Make sure the `README.md` and any other relevant documentation are kept up-to-date.

- **Consider our release cycle** - We try to follow [SemVer v2.0.0](http://semver.org/). Randomly breaking public APIs is not an option.

- **One pull request per feature** - If you want to do more than one thing, send multiple pull requests.

- **Send coherent history** - Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please [squash them](http://www.git-scm.com/book/en/v2/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages) before submitting.


- **Interfaces and documentation** - Try to use interfaces as much as possible for strong typing to reduce bugs so that we are sure you know what you are doing and put a block-doc on every methods with a detailed description.


## Running Tests

``` bash
$ composer test
```


**Happy coding**!
