Skip to content

Supported languages and tools#

Codacy uses industry-leading tools to perform automatic static code analysis over 40 supported languages and frameworks:

  • For programming languages Codacy provides static analysis as well as code duplication, code complexity, and code coverage metrics for key languages.

  • For cloud infrastructure-as-code frameworks Codacy provides static analysis to enforce security and compliance best practices.

The table below lists all languages and frameworks that Codacy supports and the corresponding tools that Codacy uses to analyze your source code. Besides this, Codacy uses cloc to calculate the source lines of code for all supported languages and supports multiple code coverage report formats.

Language or framework Static analysis Suggested fixes Duplication Complexity
Apex PMD - -
AsyncAPI Spectral - -
AWS CloudFormation Checkov - -
Azure Resource Manager Templates Checkov - -
C Clang-Tidy1, Cppcheck, Flawfinder PMD CPD -
C++ Clang-Tidy1, Cppcheck2, Flawfinder PMD CPD -
C# SonarC# PMD CPD SonarC#
CoffeeScript CoffeeLint - -
Crystal Ameba - -
CSS CSSLint, Stylelint - -
Dart dartanalyzer3 - -
Dockerfile Hadolint - -
Elixir Credo - -
Go aligncheck1, deadcode1, Gosec1, Revive, Staticcheck1 PMD CPD Gocyclo
Groovy CodeNarc - -
Java Checkstyle, PMD, SpotBugs1 PMD CPD PMD
JavaScript ESLint, JSHint, PMD ESLint 🔧 PMD CPD ESLint
JSON Jackson Linter - -
JSP PMD - -
Kotlin detekt jscpd detekt
Kubernetes Checkov - -
Less Stylelint - -
Markdown remark-lint, markdownlint markdownlint 🔧 - -
Objective-C Clang-Tidy1, Faux Pas1 - -
OpenAPI Spectral - -
PHP PHP_CodeSniffer, PHP Mess Detector PHPCPD PHP Depend
PL/SQL PMD - -
PostgreSQL SQLint - -
PowerShell PSScriptAnalyser - -
Python Bandit, Prospector, Pylint PMD CPD Radon
Ruby4 Brakeman, bundler-audit, RuboCop Flay RuboCop
Sass Stylelint - -
Scala Codacy Scalameta Pro, Scalastyle, SpotBugs1 PMD CPD Scalastyle, Scala 2 compiler and standard library
Serverless Framework Checkov - -
Shell ShellCheck - -
Swift SwiftLint, Tailor PMD CPD SwiftLint5
Terraform Checkov - -
Transact-SQL TSQLLint - -
TypeScript ESLint, TSLint ESLint 🔧 jscpd ESLint
Unity Unity Roslyn Analyzers1 - -
Velocity PMD - -
Visual Basic SonarVB - -
Visualforce PMD - -
XML PMD - -
XSL PMD - -

1: Supported as a client-side tool.
2: Currently, Cppcheck only supports checking the MISRA guidelines for C.
3: Currently, Codacy only supports including the packages lints and flutter_lints on dartanalyzer configuration files.
4: Currently, Codacy doesn't support any static code analysis tool for Ruby 3.1.
5: Supports reporting warnings or errors on functions above specific complexity thresholds. Enable the rule Cyclomatic Complexity on the Code patterns page, or use a configuration file to customize the thresholds.
🔧: Supports suggesting fixes for identified issues.

Docker images of supported tools#

Codacy adds support for new languages and tools by using a Docker image to run each tool.

The following table lists the Codacy GitHub repositories corresponding to each supported tool. Use these repositories to check the version and extra plugins supported by each tool, or to submit GitHub issues related to each tool.

Tool name Codacy GitHub repository
aligncheck codacy/codacy-aligncheck
Ameba codacy/codacy-ameba
Bandit codacy/codacy-bandit
Brakeman codacy/codacy-brakeman
bundler-audit codacy/codacy-bundler-audit
Checkstyle codacy/codacy-checkstyle
Checkov codacy/codacy-checkov
Clang-Tidy codacy/codacy-clang-tidy
Codacy Scalameta Pro codacy/codacy-scalameta
Faux Pas codacy/codacy-faux-pas
Gosec codacy/codacy-gosec
dartanalyzer codacy/codacy-dartanalyzer
deadcode codacy/codacy-deadcode
CodeNarc codacy/codacy-codenarc
CoffeeLint codacy/codacy-coffeelint
Cppcheck codacy/codacy-cppcheck
Credo codacy/codacy-credo
CSSLint codacy/codacy-csslint
detekt codacy/codacy-detekt
ESLint codacy/codacy-eslint
Flawfinder codacy/codacy-flawfinder
Revive codacy/codacy-gorevive
Hadolint codacy/codacy-hadolint
Jackson Linter codacy/codacy-jackson-linter
JSHint codacy/codacy-jshint
PHP_CodeSniffer codacy/codacy-codesniffer
PHP Mess Detector codacy/codacy-phpmd
PMD codacy/codacy-pmd
Prospector codacy/codacy-prospector
PSScriptAnalyser codacy/codacy-psscriptanalyzer
Pylint codacy/codacy-pylint-python3
markdownlint codacy/codacy-markdownlint
remark-lint codacy/codacy-remark-lint
Unity Roslyn Analyzers codacy/codacy-roslyn
RuboCop codacy/codacy-rubocop
Scalastyle codacy/codacy-scalastyle
ShellCheck codacy/codacy-shellcheck
SonarC# codacy/codacy-sonar-csharp
SonarVB codacy/codacy-sonar-visual-basic
Spectral codacy/codacy-spectral
SpotBugs codacy/codacy-spotbugs
SQLint codacy/codacy-sqlint
Staticcheck codacy/codacy-staticcheck
Stylelint codacy/codacy-stylelint
SwiftLint codacy/codacy-swiftlint
Tailor codacy/codacy-tailor
TSLint codacy/codacy-tslint
TSQLLint codacy/codacy-tsqllint

See also#

Share your feedback 📢

Did this page help you?

Thanks for the feedback! Is there anything else you'd like to tell us about this page?

We're sorry to hear that. Please let us know what we can improve:

Alternatively, you can create a more detailed issue on our GitHub repository.

Thanks for helping improve the Codacy documentation.

Edit this page on GitHub if you notice something wrong or missing.

If you have a question or need help please contact support@codacy.com.

Last modified April 20, 2023