diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..0796c0a --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,67 @@ +Contributing +============ + +Contributions are welcome and very much appreciated. Credit will be appropriately given. + +## License + +By contributing, you agree that your contributions will be licensed under its MIT License. + +## Code contributions + +To begin contributing to the project, please follow these steps. + +1. [Fork](https://help.github.com/en/articles/fork-a-repo) the repo. +2. Clone your fork locally: + +```shell +$ git clone git@github.com:your_username/backtester_options.git +``` + +3. Create the environment and install dependencies: + +```shell +$ make init +``` + +4. Create your development branch from `master` + +```shell +$ git checkout -b your_branch master +``` + +5. Start coding your contribution (Thanks!) + +6. Make sure your code passes all tests, lints and is formatted correctly (`TODO`: Add linting, code formatting to Travis.) + +6. Submit a pull request with a brief explanation of your work. + +## Types of Contributions + +### Bug reports + +Make sure to follow the setup steps detailed in the [readme](README.md). If you find a bug, please create an issue with the label `bug` and provide the following information: + +- Operating System and version. +- Steps taken to replicate the bug. +- What was the expected output and what actually happend. +- Any details of your local environment that might be helpful for troubleshooting. + +### Bug fixes + +If you find a bug issue you want to fix, follow the steps outlined [above](#code-contributions) and submit a pull request with a link to the original issue. + +### Proposing Features + +Create an issue detailing what functionality you'd like to see implemented. If you can, provide general advice as to how the proposed feature could be done. + +### Implementing Features + +Find an issue with the label `help wanted` or `improvement` and [start coding](#code-contributions). +When you are done, submit a pull request with a link to the original issue and some code samples showing how the code works. Tests are expected when adding new functionality. + + +### Documentation + +We encourage users to improve our project documentation, either via docstrings, markdown documents to be added to the [project wiki](https://github.com/lambdaclass/backtester_options/wiki) or writing blog posts. +Let us know via issues labeled `docs` and we'll credit you appropriately.