Everyone is welcome to contribute, and we value everybody's contribution. Code is thus not the only way to help the community. Answering questions, filling issues, feature requests, helping others, reaching out and improving the documentations are immensely valuable to the community. It also helps us if you spread the word thorugh reference of the library in your projects or shout-out on Twitter.
Whichever way you choose to contribute, please be mindful to respect our code of conduct.
The best practice of submitting code is by creating pull requests to the dev branch our GitHub repository following the contribution policy. By submitting your code you authorize that it complies with the Developer's Certificate of Origin.
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license); or
(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.
(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.
Based on https://gcc.gnu.org/contribute.html and http://elinux.org/Developer_Certificate_Of_Origin