Analysis Tools


Javascript
  • Javascript Scrutinzer

    Javascript Scrutinizer runs data flow analysis on your code to find bugs, compute code metrics, and find duplications.

  • ESLint

    ESLint is an open-source project originally created by Nicholas C. Zakas in June 2013. Its goal is to provide a pluggable linting utility for Javascript.

  • JSHint

    JSHint is a tool to detect errors and potential problems in Javascript code and can be used to enforce coding conventions.

PHP
  • PHP Scrutinizer

    PHP Scrutinizer is the best PHP analysis engine. It finds a wide range of bugs and errors in your code long before it hits production. It also detects code smells such as duplicated or highly complex code.

  • PHP Code Sniffer

    PHP_CodeSniffer tokenises PHP, Javascript and CSS files and detects violations of a defined set of coding standards.

Python
  • Python Scrutinzer

    Python Scrutinizer goes beyond simple style checks for whether you make use of certain language features. We track how data flows through your application to find issues, compute intelligence, and much more.

  • Pylint

    Pylint is a Python source code analyzer which looks for programming errors (and) helps enforcing a coding standard

Ruby
  • Ruby Scrutinizer

    Ruby Scrutinizer goes beyond simple style checks for whether you make use of certain language features. It tracks how data flows through your application to find issues, compute code metrics and rating, find similar code, and much more.

  • Rubocop

    RuboCop is a Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide.

  • bundler-audit

    bundler-audit is a patch-level verification tool for Bundler. It checks for vulnerable versions of gems in Gemfile.lock and insecure gem sources.

Shell Scripts
  • Shellcheck

    ShellCheck is a GPLv3 tool that gives warnings and suggestions for bash/sh shell scripts

CSS
  • CSSLint

    CSSLint is an open source CSS code quality tool originally written by Nicholas C. Zakas and Nicole Sullivan. It is a tool to help point out problems with your CSS code.

  • scsslint

    scss-lint is a tool to help keep your SCSS files clean and readable by running it against a collection of configurable linter rules.

Scala
  • Scalastyle

    Scalastyle examines your Scala code and indicates potential problems with it. It is used as part of the grading framework for the course Functional Programming Principles in Scala by Martin Odersky on Coursera.

Go
  • Go Scrutinizer

    Go Scrutinizer goes beyond simple style checks for whether you make use of certain language features. We track how data flows through your application to find issues, compute intelligence, and much more.

  • Go Vet

    Vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string. Vet uses heuristics that do not guarantee all reports are genuine problems, but it can find errors not caught by the compilers.

  • Golint

    Golint is a linter for Go source code.

Java
  • Java Scrutinizer

    Java Scrutinizer goes beyond simple style checks for whether you make use of certain language features. It tracks how data flows through your application to find issues, compute code metrics and rating, find similar code, and much more.

  • FindBugs

    FindBugs is a program which uses static analysis to look for bugs in Java code. The name FindBugs and the FindBugs logo are trademarked by The University of Maryland.

  • Checkstyle

    Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task.

  • PMD

    PMD is a source code analyzer. It finds common programming flaws like unused variables, empty catch blocks, unnecessary object creation, and so forth.

  • SonarJava

    SonarQube Java Analyzer is the static code analyzer for Java from SonarSource Team.

If your desired tool is not in the list above, it is possible to configure your own tool:
Configuring another open-source analysis tools