Our open and extensible platform lets you customize your analysis to surface the issues your team cares about most.
When you first add a repo to Code Climate, we’ll analyze your code using our 10-point maintainability assessment.
These individual checks can be enabled/disabled on the Maintainability tab of your repository's Settings page.
Code Climate allows users to enforce test coverage via our Github Pull Request Integration.
Deprecated codeclimate/coverage Required Status
If you’re currently using our older codeclimate/coverage as a required status your pull requests, first remove it via your GitHub Repo Settings before enabling either of the statuses below. The codeclimate/coverage status is deprecated, and will no longer update correctly within your pull request.
The Enforce Diff Coverage option requires all new code in a Pull Request to meet a configurable minimum threshold of test coverage percentage. The default threshold is 80%.
The Enforce Total Coverage option sends a pass/fail status based on whether the PR would have a positive/negative impact on the repository's overall test coverage.
- If the overall test coverage percentage of your repository will decrease by merging the PR, Code Climate will send a failed status to Github.
- PRs must increase the overall test coverage of your repo by 0.1% in order to achieve a passing status.
In addition to the 10-point maintainability analysis, you can choose to implement over 30+ style, linting, and security static analysis tools. These Engines can be individually enabled on the Plugins tab of your repository's Settings page.
You can choose to exclude certain files and directories from our analysis. This can be done using the Exclude patterns tab on your repository's Settings page. By default, we exclude a list of common folders paths for tests, configuration files, and vendor code. To learn more about recommended exclusions, visit our docs here.
In addition to the in-app configuration described above, you can commit a configuration file (
.codeclimate.json) to your repo, which allows you to more finely tune your analysis. For more information, check out our help doc on Advanced Configuration.