# Contributing to Mongoose

You can contribute to Mongoose is a number of ways.

## Contribute by Adding an Issue

If you find a bug in Mongoose or would like to request a feature, you can add an issue to the issue tracker at [`https://github.com/ScottKolo/Mongoose/issues`](https://github.com/ScottKolo/Mongoose/issues). We will do our best to address the issue.

## Contribute with a Pull Request

If you would like to add to Mongoose by contributing your code, we require that you agree to a Contributor License Agreement located at [`Doc/CONTRIBUTOR-LICENSE`](Doc/CONTRIBUTOR-LICENSE). We dual-license Mongoose, so we need your permission to be able to use any contributed code under a commercial license. To automate this, we use CLAHub. To get started, [sign the Contributor License Agreement](https://www.clahub.com/agreements/ScottKolo/Mongoose). After you have signed the CLA, you can submit a pull request by following the usual procedure on GitHub:

1. Fork the Mongoose repository.
2. Make your changes to the code. Be sure to include tests if warranted.
3. Run the test suite by building Mongoose and running `make test`. Make sure all tests passes.
4. Create a pull request at [https://github.com/ScottKolo/Mongoose/pulls](https://github.com/ScottKolo/Mongoose/pulls).

Once we see the pull request, we will do our best to address and approve it.