Analysis Tools (Open Source)

CodeFactor.io uses a variety of software code analysis tools and algorithms. In addition to proprietary tools CodeFactor.io also takes advantage of several Open Source code analysis tools. Here is the list of Open Source analysis engines that we use:

Language Name Version Configuration
Python pycodestyle 2.13.0 setup.cfg, tox.ini, .flake8
Python Pylint 3.3.7/1.9.5 .pylintrc file
Python Bandit 1.8.6 .bandit file
Python Ruff 0.12.7 N/A
JavaScript, TypeScript, Vue, Svelte, Astro Oxlint 1.13.0 .oxlintrc.json file
JavaScript, TypeScript, Vue, Svelte, Astro ESLint 9.31.0/8.57.1 .eslintrc.* file
CSS, SCSS, Less, HTML Stylelint 16.23.1 .stylelintrc* file
C# StyleCop.Analyzers - .editorconfig file
Java Checkstyle 11.0.1 checkstyle.xml file
Python, C/C++, .NET, Java, PHP, Go, Dart Trivy 0.65.0 trivy.yaml file
PHP PHP_CodeSniffer 3.13.2 (.)phpcs.xml(.dist) file
Shell ShellCheck 0.11.0 .shellcheckrc file
Dockerfile Hadolint 2.13.1 .hadolint.yaml file
Go Revive 1.11.0 revive.toml
T-SQL TSQLLint 1.16.0 .tsqllintrc file
YAML Yamllint 1.37.1 .yamllint* file
PowerShell PSScriptAnalyzer 1.24.0 PSScriptAnalyzerSettings.psd1 file
Ruby RuboCop 1.80.1 .rubocop.yml file
Ruby bundler-audit 0.9.2 .bundler-audit.yml file
Ruby Brakeman 4.3.1 brakeman.yml
Swift SwiftLint 0.59.0 .swiftlint.yml file
Kotlin Detekt 1.23.8 detekt.yml file
Dart Linter for Dart 3.8.0 analysis_options.yaml file
R Lintr 3.2.0 .lintr file
C, C++ CppLint 2.0.3 CPPLINT.CFG file
C, C++ Flawfinder 2.0.19 N/A
Haskell HLint 3.10 .hlint.yaml file
Groovy CodeNarc 3.6.0 codenarc.xml file
CoffeeScript CoffeeLint 5.2.11 coffeelint.json file
TypeScript TSLint (deprecated) 6.1.3 tslint.* file
Scala Scalastyle (deprecated) 1.5.1 scalastyle.xml file

If engine is not provided with custom configuration it will use default rule-set. We reserve the right to disable selected rules without notice if necessary.

Supported packages

Stylelint

@stylistic/stylelint-plugin
stylelint-a11y
stylelint-codeguide
stylelint-color-format
stylelint-csstree-validator
stylelint-declaration-block-no-ignored-properties
stylelint-declaration-strict-value
stylelint-declaration-use-variable
stylelint-gamut
stylelint-group-selectors
stylelint-high-performance-animation
stylelint-less
stylelint-no-browser-hacks/lib
stylelint-no-restricted-syntax
stylelint-no-unsupported-browser-features
stylelint-order
stylelint-plugin-defensive-css
stylelint-plugin-logical-css
stylelint-prettier
stylelint-rem-over-px
stylelint-scales
stylelint-selector-bem-pattern
stylelint-use-nesting
stylelint-value-no-unknown-custom-properties

Pylint

pylint.extensions.bad_builtin
pylint.extensions.broad_try_clause
pylint.extensions.check_elif
pylint.extensions.code_style
pylint.extensions.comparison_placement
pylint.extensions.confusing_elif
pylint.extensions.consider_refactoring_into_while_condition
pylint.extensions.consider_ternary_expression
pylint.extensions.dict_init_mutate
pylint.extensions.docparams
pylint.extensions.docstyle
pylint.extensions.dunder
pylint.extensions.empty_comment
pylint.extensions.eq_without_hash
pylint.extensions.for_any_all
pylint.extensions.magic_value
pylint.extensions.no_self_use
pylint.extensions.overlapping_exceptions
pylint.extensions.redefined_loop_name
pylint.extensions.redefined_variable_type
pylint.extensions.set_membership
pylint.extensions.typing
pylint.extensions.while_used
pylint_celery
pylint_django
pylint_sqlalchemy

PHP_CodeSniffer

MySource
PEAR
PSR1
PSR12
PSR2
Squiz
Zend
WordPress-VIP-Go
WordPressVIPMinimum
Drupal
DrupalPractice
PHPCompatibility
PHPCompatibilityParagonieRandomCompat
PHPCompatibilityParagonieSodiumCompat
PHPCompatibilityWP
VariableAnalysis
WooCommerce
WooCommerce-Core
WordPress
WordPress-Core
WordPress-Docs
WordPress-ExtraWordPress-VIP

RuboCop

rubocop-airbnb
rubocop-capybara
rubocop-factory_bot
rubocop-faker
rubocop-gitlab-security
rubocop-graphql
rubocop-i18n
rubocop-jekyll
rubocop-md
rubocop-minitest
rubocop-obsession
rubocop-packaging
rubocop-performance
rubocop-rails
rubocop-rake
rubocop-rspec
rubocop-rspec_rails
rubocop-rubycw
rubocop-sequel
rubocop-sorbet
rubocop-thread_safety
rubocop/require_tools

Linter for Dart

effective_dart
flutter_lints
lint
lints
pedantic
very_good_analysis

Last updated Loading...