1*103e46e4SHarish Mahendrakar# How to Contribute 2*103e46e4SHarish Mahendrakar 3*103e46e4SHarish MahendrakarWe'd love to accept your patches and contributions to this project. There are 4*103e46e4SHarish Mahendrakarjust a few small guidelines you need to follow. 5*103e46e4SHarish Mahendrakar 6*103e46e4SHarish Mahendrakar## Contributor License Agreement 7*103e46e4SHarish Mahendrakar 8*103e46e4SHarish MahendrakarContributions to this project must be accompanied by a Contributor License 9*103e46e4SHarish MahendrakarAgreement. You (or your employer) retain the copyright to your contribution; 10*103e46e4SHarish Mahendrakarthis simply gives us permission to use and redistribute your contributions as 11*103e46e4SHarish Mahendrakarpart of the project. Head over to <https://cla.developers.google.com/> to see 12*103e46e4SHarish Mahendrakaryour current agreements on file or to sign a new one. 13*103e46e4SHarish Mahendrakar 14*103e46e4SHarish MahendrakarYou generally only need to submit a CLA once, so if you've already submitted one 15*103e46e4SHarish Mahendrakar(even if it was for a different project), you probably don't need to do it 16*103e46e4SHarish Mahendrakaragain. 17*103e46e4SHarish Mahendrakar 18*103e46e4SHarish Mahendrakar## Code reviews 19*103e46e4SHarish Mahendrakar 20*103e46e4SHarish MahendrakarAll submissions, including submissions by project members, require review. We 21*103e46e4SHarish Mahendrakaruse a [Gerrit](https://www.gerritcodereview.com) instance hosted at 22*103e46e4SHarish Mahendrakarhttps://chromium-review.googlesource.com for this purpose. See the 23*103e46e4SHarish Mahendrakar[WebM Project page](https://www.webmproject.org/code/contribute/submitting-patches/) 24*103e46e4SHarish Mahendrakarfor additional details. 25*103e46e4SHarish Mahendrakar 26*103e46e4SHarish Mahendrakar## Code Style 27*103e46e4SHarish Mahendrakar 28*103e46e4SHarish MahendrakarThe C++ code style is based on the 29*103e46e4SHarish Mahendrakar[Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html) and 30*103e46e4SHarish Mahendrakar`clang-format --style=Google`. `clang-format -i --style=file` can be used to 31*103e46e4SHarish Mahendrakarformat individual files, it will use the settings from `.clang-format`. 32*103e46e4SHarish Mahendrakar 33*103e46e4SHarish MahendrakarCMake files are formatted with 34*103e46e4SHarish Mahendrakar[cmake-format](https://cmake-format.readthedocs.io/en/latest/). `cmake-format 35*103e46e4SHarish Mahendrakar-i` can be used to format individual files, it will use the settings from 36*103e46e4SHarish Mahendrakar`.cmake-format.py`. 37*103e46e4SHarish Mahendrakar 38*103e46e4SHarish Mahendrakar## Community Guidelines 39*103e46e4SHarish Mahendrakar 40*103e46e4SHarish MahendrakarThis project follows 41*103e46e4SHarish Mahendrakar[Google's Open Source Community Guidelines](https://opensource.google.com/conduct/). 42