Static Analysis & Code Quality

839 resources4 categoriesView Original

Multiple languages(139 items)

A

ale

— Asynchronous Lint Engine for Vim and NeoVim with support for many languages.

Multiple languages
A

Android Studio

— Based on IntelliJ IDEA, and comes bundled with tools for Android including Android Lint.

Multiple languages
A

AppChecker

:copyright: — Static analysis for C/C++/C#, PHP and Java.

Multiple languages
A

Application Inspector

:copyright: — Commercial Static Code Analysis which generates exploits to verify vulnerabilities.

Multiple languages
A

ApplicationInspector

— Creates reports of over 400 rule patterns for feature detection (e.g. the use of cryptography or version control in apps).

Multiple languages
A

ArchUnit

— Unit test your Java or Kotlin architecture.

Multiple languages
A

ast-grep

— ast-grep is a powerful tool designed for managing code at scale using Abstract Syntax Trees (AST). Think of it as a hybrid of grep, eslint, and codemod, with the ability to search, lint, and rewrite code based on its structure rather than plain text.

Multiple languages
A

Atom-Beautify

:warning: — Beautify HTML, CSS, JavaScript, PHP, Python, Ruby, Java, C, C++, C#, Objective-C, CoffeeScript, TypeScript, Coldfusion, SQL, and more in Atom editor.

Multiple languages
A

autocorrect

— A linter and formatter to help you to improve copywriting, correct spaces, words, punctuations between CJK (Chinese, Japanese, Korean).

Multiple languages
A

Axivion Bauhaus Suite

:copyright: — Tracks down error-prone code locations, style violations, cloned or dead code, cyclic dependencies and more for C/C++, C#/.NET, Java and Ada 83/Ada 95.

Multiple languages
B

Bearer

— Open-Source static code analysis tool to discover, filter and prioritize security risks and vulnerabilities leading to sensitive data exposures (PII, PHI, PD). Highly configurable and easily extensible, built for security and engineering teams.

Multiple languages
B

Better Code Hub

:copyright: — Better Code Hub checks your GitHub codebase against 10 engineering guidelines devised by the authority in software quality, Software Improvement Group.

Multiple languages
B

Betterscan CE

— Checks your code and infra (various Git repositories supported, cloud stacks, CLI, Web Interface platform, integrationss available) for security and quality issues. Code Scanning/SAST/Linting using many tools/Scanners deduplicated with One Report (AI optional).

Multiple languages
B

biome

— A toolchain for web projects, aimed to provide functionalities to maintain them. Biome formats and lints code in a fraction of a second. It is the successor to Rome. It is designed to eventually replace Biome is designed to eventually replace Babel, ESLint, webpack, Prettier, Jest, and others.

Multiple languages
B

BugProve

:copyright: — BugProve is a firmware analysis platform featuring both static and dynamic analysis techniques to discover memory corruptions, command injections and other classes or common weaknesses in binary code. It also detects vulnerable dependencies, weak cryptographic parameters, misconfigurations, and more.

Multiple languages
C

callGraph

— Statically generates a call graph image and displays it on screen.

Multiple languages
C

CAST Highlight

:copyright: — Commercial Static Code Analysis which runs locally, but uploads the results to its cloud for presentation.

Multiple languages
C

Checkmarx CxSAST

:copyright: — Commercial Static Code Analysis which doesn't require pre-compilation.

Multiple languages
C

ClassGraph

— A classpath and module path scanner for querying or visualizing class metadata or class relatedness.

Multiple languages
C

Clayton

:copyright: — AI-powered code reviews for Salesforce. Secure your developments, enforce best practice and control your technical debt in real-time.

Multiple languages
C

coala

:warning: — Language independent framework for creating code analysis - supports over 60 languages by default.

Multiple languages
C

Cobra

:copyright: — Structural source code analyzer by NASA's Jet Propulsion Laboratory.

Multiple languages
C

Codacy

:copyright: — Code Analysis to ship Better Code, Faster.

Multiple languages
C

Code Intelligence

:copyright: — CI/CD-agnostic DevSecOps platform which combines industry-leading fuzzing engines for finding bugs and visualizing code coverage

Multiple languages
C

Codeac

:copyright: — Automated code review tool integrates with GitHub, Bitbucket and GitLab (even self-hosted). Available for JavaScript, TypeScript, Python, Ruby, Go, PHP, Java, Docker, and more. (open-source free)

Multiple languages
C

codeburner

— Provides a unified interface to sort and act on the issues it finds.

Multiple languages
C

codechecker

— A defect database and viewer extension for the Clang Static Analyzer with web GUI.

Multiple languages
C

CodeFactor

:copyright: — Automated Code Analysis for repos on GitHub or BitBucket.

Multiple languages
C

CodeFlow

:copyright: — Automated code analysis tool to deal with technical depth. Integrates with Bitbucket and Gitlab. (free for Open Source Projects)

Multiple languages
C

CodeIt.Right

:copyright: — CodeIt.Right™ provides a fast, automated way to ensure that your source code adheres to (your) predefined design and style guidelines as well as best coding practices.

Multiple languages
C

Codemodder

— Codemodder is a pluggable framework for building expressive codemods. Use Codemodder when you need more than a linter or code formatting tool. Use it to fix non-trivial security issues and other code quality problems.

Multiple languages
C

codeql

— Deep code analysis - semantic queries and dataflow for several languages with VSCode plugin support.

Multiple languages
C

CodeQue

— Ecosystem for structural matching JavaScript and TypeScript code. Offers search tool that understands code structure. Available as CLI tool and Visual Studio Code extension. It helps to search code faster and more accurately making you workflow more effective. Soon it will offer ESLint plugin to create your own rules in minutes to help with assuring codebase quality.

Multiple languages
C

CodeRush

:copyright: — Code creation, debugging, navigation, refactoring, analysis and visualization tools that use the Roslyn engine in Visual Studio 2015 and up.

Multiple languages
C

CodeScan

:copyright: — Code Quality and Security for Salesforce Developers. Made exclusively for the Salesforce platform, CodeScan’s code analysis solutions provide you with total visibility into your code health.

Multiple languages
C

CodeScene

:copyright: — CodeScene is a quality visualization tool for software. Prioritize technical debt, detect delivery risks, and measure organizational aspects. Fully automated.

Multiple languages
C

CodeSee

:copyright: — CodeSee is mapping and automating your app's services, directories, file dependencies, and code changes. It's like Google Map, but for code.t

Multiple languages
C

CodeSonar from GrammaTech

:copyright: — Advanced, whole program, deep path, static analysis of C, C++, Java and C# with easy-to-understand explanations and code and path visualization.

Multiple languages
C

Codety

:copyright: — Codety Scanner is a comprehensive source code scanner that embeds 5000+ static code analysis rules, which aim to detect code issues for 20+ programming languages and IaC tools.

Multiple languages
C

Codiga

:copyright: — Automated Code Reviews and Technical Debt management platform that supports 12+ languages.

Multiple languages
C

Corgea

:copyright: — Corgea is an AI-powered SAST scanner that helps developers find and fix insecure code. It finds business logic flaws, broken authentication, API vulnerabilities, and more with little false positives. Additionally, it automatically writes security fixes for them to approve. Corgea integrates with GitHub, GitLab, Azure DevOps, IDEs and CLI. It is free to try it.

Multiple languages
C

Corrode

:warning: — Semi-automatic translation from C to Rust. Could reveal bugs in the original implementation by showing Rust compiler warnings and errors. Superseded by C2Rust.

Multiple languages
C

Coverity

:copyright: — Synopsys Coverity supports 20 languages and over 70 frameworks including Ruby on rails, Scala, PHP, Python, JavaScript, TypeScript, Java, Fortran, C, C++, C#, VB.NET.

Multiple languages
C

cpp-linter-action

— A Github Action for linting C/C++ code integrating clang-tidy and clang-format to collect feedback provided in the form of thread comments and/or annotations.

Multiple languages
C

cqc

:warning: — Check your code quality for js, jsx, vue, css, less, scss, sass and styl files.

Multiple languages
D

DeepCode

:warning: :copyright: — DeepCode was acquired by Snyk is now Snyk Code.

Multiple languages
D

DeepSource

:copyright: — In-depth static analysis to find issues in verticals of bug risks, security, anti-patterns, performance, documentation and style. Native integrations with GitHub, GitLab and Bitbucket. Less than 5% false positives.

Multiple languages
D

deleaker

:copyright: — Deleaker is a memory leak detection tool for C++, .NET, and Delphi, integrating with Visual Studio, Qt Creator, and RAD Studio or running as a standalone application. It helps developers find and fix memory, GDI, and handle leaks efficiently.

Multiple languages
D

Depends

— Analyses the comprehensive dependencies of code elements for Java, C/C++, Ruby.

Multiple languages
D

DerScanner

:copyright: — Multi-language Static Application Security Testing (SAST) platform that detects critical vulnerabilities, including hardcoded secrets, weak cryptography, backdoors, SQL injections, insecure configurations, etc.

Multiple languages
D

DevSkim

— Regex-based static analysis tool for Visual Studio, VS Code, and Sublime Text - C/C++, C#, PHP, ASP, Python, Ruby, Java, and others.

Multiple languages
D

dotenet-format

— A code formatter for .NET. Preferences will be read from an `.editorconfig` file, if present, otherwise a default set of preferences will be used. At this time dotnet-format is able to format C# and Visual Basic projects with a subset of supported `.editorconfig` options.

Multiple languages
E

Embold

:copyright: — Intelligent software analytics platform that identifies design issues, code issues, duplication and metrics. Supports Java, C, C++, C#, JavaScript, TypeScript, Python, Go, Kotlin and more.

Multiple languages
E

emerge

— Emerge is a source code and dependency visualizer that can be used to gather insights about source code structure, metrics, dependencies and complexity of software projects. After scanning the source code of a project it provides you an interactive web interface to explore and analyze your project by using graph structures.

Multiple languages
E

ESLint

— An extensible linter for JS, following the ECMAScript standard.

Multiple languages
E

ezno

— A JavaScript compiler and TypeScript checker written in Rust with a focus on static analysis and runtime performance. Ezno's type checker is built from scratch. The checker is fully compatible with TypeScript type annotations and can work without any type annotations at all.

Multiple languages
F

Find Security Bugs

— The SpotBugs plugin for security audits of Java web applications and Android applications. (Also work with Kotlin, Groovy and Scala projects)

Multiple languages
F

Fortify

:copyright: — A commercial static analysis platform that supports the scanning of C/C++, C#, VB.NET, VB6, ABAP/BSP, ActionScript, Apex, ASP.NET, Classic ASP, VB Script, Cobol, ColdFusion, HTML, Java, JS, JSP, MXML/Flex, Objective-C, PHP, PL/SQL, T-SQL, Python (2.6, 2.7), Ruby (1.9.3), Swift, Scala, VB, and XML.

Multiple languages
F

Freeplane Code Explorer

— The Code Explorer mode in Freeplane is designed for analyzing the structure and dependencies of code compiled to JVM class files. It also allows displaying ArchUnit test results directly in Freeplane, if Freeplane is running and ArchUnit detects rule violations during the tests.

Multiple languages
G

Goodcheck

— Regexp based customizable linter.

Multiple languages
G

goone

:warning: — Finds N+1 queries (SQL calls in a for loop) in go code

Multiple languages
G

graudit

— Grep rough audit - source code auditing tool.

Multiple languages
H

HCL AppScan Source

:copyright: — Commercial Static Code Analysis.

Multiple languages
H

Hopper

:warning: — A static analysis tool written in scala for languages that run on JVM.

Multiple languages
H

Hound CI

:warning: — Comments on style violations in GitHub pull requests. Supports Coffeescript, Go, HAML, JavaScript, Ruby, SCSS and Swift.

Multiple languages
I

imhotep

:warning: — Comment on commits coming into your repository and check for syntactic errors and general lint warnings.

Multiple languages
I

include-gardener

:warning: — A multi-language static analyzer for C/C++/Obj-C/Python/Ruby to create a graph (in dot or graphml format) which shows all `#include` relations of a given set of files.

Multiple languages
I

Infer

— A static analyzer for Java, C and Objective-C

Multiple languages
K

keploy

— Keploy is an open-source testing platform that helps developers automate and streamline their testing process. It provides API, and integration testing agents, generating tests, mocks/stubs for APIs that actually work. Additionally, Keploy offers an AI-powered Unit Testing Agent that generates stable, useful unit tests directly in your GitHub PRs and in VSCode, helping catch errors and improve code quality.

Multiple languages
K

Kiuwan

:copyright: — Identify and remediate cyber threats in a blazingly fast, collaborative environment, with seamless integration in your SDLC. Python, C\C++, Java, C#, PHP and more.

Multiple languages
K

Klocwork

:copyright: — Quality and Security Static analysis for C/C++, Java and C#.

Multiple languages
L

LGTM

:copyright: — Find security vulnerabilities, variants, and critical code quality issues using CodeQL queries over source code. Automatic PR code review; free for open source. Formerly semmle. It supports public Git repositories hosted on Bitbucket Cloud, GitHub.com, GitLab.com.

Multiple languages
L

lizard

— Lizard is an extensible Cyclomatic Complexity Analyzer for many programming languages including C/C++ (doesn't require all the header files or Java imports). It also does copy-paste detection (code clone detection/code duplicate detection) and many other forms of static code analysis. Counts lines of code without comments, CCN (cyclomatic complexity number), token count of functions, parameter count of functions.

Multiple languages
M

Mega-Linter

— Mega-Linter can handle any type of project thanks to its 70+ embedded Linters,

Multiple languages
M

Mobb

:copyright: — Mobb is a trusted, automatic vulnerability fixer that secures applications, reduces security backlogs, and frees developers to focus on innovation. Mobb is free for open-source projects.

Multiple languages
M

MOPSA

— A static analyzer designed to easily reuse abstract domains across widely different languages (such as C and Python).

Multiple languages
O

oclint

— A static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C.

Multiple languages
O

Offensive 360

:copyright: — Commercial Static Code Analysis system doesn't require building the source code or pre-compilation.

Multiple languages
O

OpenRewrite

— OpenRewrite fixes common static analysis issues reported through Sonar and other tools using a Maven and Gradle plugin or the Moderne CLI.

Multiple languages
O

OpenStaticAnalyzer

— OpenStaticAnalyzer is a source code analyzer tool, which can perform deep static analysis of the source code of complex systems.

Multiple languages
O

oxc

— The Oxidation Compiler is creating a suite of high-performance tools for the JavaScript / TypeScript language re-written in Rust.

Multiple languages
P

parasoft

:copyright: — Automated Software Testing Solutions for unit-, API-, and web UI testing. Complies with MISRA, OWASP, and others.

Multiple languages
P

pfff

:warning: — Facebook's tools for code analysis, visualizations, or style-preserving source transformation for many languages.

Multiple languages
P

Pixee

:copyright: — Pixeebot finds security and code quality issues in your code and creates merge-ready pull requests with recommended fixes.

Multiple languages
P

PMD

— A source code analyzer for Java, Salesforce Apex, Javascript, PLSQL, XML, XSL and others.

Multiple languages
P

pre-commit

— A framework for managing and maintaining multi-language pre-commit hooks.

Multiple languages
P

Precaution

— Precaution is a static analysis security tool (SAST) designed to find potentially critical vulnerabilities in source code prior to production. It is available as a CLI, GitHub Action, and GitHub App.

Multiple languages
P

Prettier

— An opinionated code formatter.

Multiple languages
P

Pronto

— Quick automated code review of your changes. Supports more than 40 runners for various languages, including Clang, Elixir, JavaScript, PHP, Ruby and more.

Multiple languages
P

PT.PM

:warning: — An engine for searching patterns in the source code, based on Unified AST or UST. At present time C#, Java, PHP, PL/SQL, T-SQL, and JavaScript are supported. Patterns can be described within the code or using a DSL.

Multiple languages
P

Putout

— Pluggable and configurable code transformer with built-in eslint, babel plugins support for js, jsx typescript, flow, markdown, yaml and json.

Multiple languages
P

PVS-Studio

:copyright: — A (conditionally free for FOSS and individual developers) static analysis of C, C++, C# and Java code. For advertising purposes you can propose a large FOSS project for analysis by PVS employees. Supports CWE mapping, OWASP ASVS, MISRA, AUTOSAR and SEI CERT coding standards.

Multiple languages
P

pylama

— Code audit tool for Python and JavaScript. Wraps pycodestyle, pydocstyle, PyFlakes, Mccabe, Pylint, and more

Multiple languages
Q

Qwiet AI

:copyright: — Identify vulnerabilities that are unique to your code base before they reach production. Leverages the Code Property Graph (CPG) to run its analyses concurrently in a single graph of graphs. Automatically finds business logic flaws in dev like hardcoded secrets and logic bombs

Multiple languages
R

Refactoring Essentials

— The free Visual Studio 2015 extension for C# and VB.NET refactorings, including code best practice analyzers.

Multiple languages
R

relint

— A static file linter that allows you to write custom rules using regular expressions (RegEx).

Multiple languages
R

ReSharper

:copyright: — Extends Visual Studio with on-the-fly code inspections for C#, VB.NET, ASP.NET, JavaScript, TypeScript and other technologies.

Multiple languages
R

RIPS

:copyright: — A static source code analyser for vulnerabilities in PHP scripts.

Multiple languages
R

Roslyn Analyzers

— Roslyn-based implementation of FxCop analyzers.

Multiple languages
R

Roslyn Security Guard

— Project that focuses on the identification of potential vulnerabilities such as SQL injection, cross-site scripting (XSS), CSRF, cryptography weaknesses, hardcoded passwords and many more.

Multiple languages
S

SafeQL

— Validate and auto-generate TypeScript types from raw SQL queries in PostgreSQL. SafeQL is an ESLint plugin for writing SQL queries in a type-safe way.

Multiple languages
S

SAST Online

:copyright: — Check the Android Source code thoroughly to uncover and address potential security concerns and vulnerabilities. Static application security testing (Static Code Analysis) tool Online

Multiple languages
S

Scrutinizer

:copyright: — A proprietary code quality checker that can be integrated with GitHub.

Multiple languages
S

Security Code Scan

— Security code analyzer for C# and VB.NET. Detects various security vulnerability patterns: SQLi, XSS, CSRF, XXE, Open Redirect, etc. Integrates into Visual Studio 2015 and newer. Detects various security vulnerability patterns: SQLi, XSS, CSRF, XXE, Open Redirect, etc.

Multiple languages
S

Semgrep

— A fast, open-source, static analysis tool for finding bugs and enforcing code standards at editor, commit, and CI time. Its rules look like the code you already write; no abstract syntax trees or regex wrestling. Supports 17+ languages.

Multiple languages
S

Semgrep Supply Chain

:copyright: — Quickly find and remediate high-priority security issues. Semgrep Supply Chain prioritizes the 2% of vulnerabilities that are reachable from your code.

Multiple languages
S

ShiftLeft Scan

— Scan is a free open-source DevSecOps platform for detecting security issues in source code and dependencies. It supports a broad range of languages and CI/CD pipelines.

Multiple languages
S

shipshape

:warning: — Static program analysis platform that allows custom analyzers to plug in through a common interface.

Multiple languages
S

Sigrid

:copyright: — Sigrid helps you to improve your software by measuring your system's code quality, and then compares the results against a benchmark of thousands of industry systems to give you concrete advice on areas where you can improve.

Multiple languages
S

Similarity Tester

— A tool that finds similarities between or within files to support you encountering DRY principle violations.

Multiple languages
S

Snyk Code

:copyright: — Snyk Code finds security vulnerabilities based on AI. Its speed of analysis allow us to analyse your code in real time and deliver results when you hit the save button in your IDE. Supported languages are Java, JavaScript, Python, PHP, C#, Go and TypeScript. Integrations with GitHub, BitBucket and Gitlab. It is free to try and part of the Snyk platform also covering SCA, containers and IaC.

Multiple languages
S

SonarQube Cloud

:copyright: — SonarQube Cloud enables your team to deliver clean code consistently and efficiently with a code review tool that easily integrates into the cloud DevOps platforms and extend your CI/CD workflow. SonarQube Cloud provides a free plan.

Multiple languages
S

SonarQube for IDE

— SonarQube for IDE (formerly SonarLint) is a free IDE extension available for IntelliJ, VS Code, Visual Studio, and Eclipse, to find and fix coding issues in real-time, flagging issues as you code, just like a spell-checker. More than a linter, it also delivers rich contextual guidance to help developers understand why there is an issue, assess the risk, and educate them on how to fix it.

Multiple languages
S

SonarQube Server

— SonarQube empowers development teams with a code quality and security solution that deeply integrates into your enterprise environment; enabling you to deploy clean code consistently and reliably. SonarQube provides a free and open source Community Build.

Multiple languages
S

Sonatype

:copyright: — Reports known vulnerabilities in common dependencies and recommends updated packages to minimize breaking changes

Multiple languages
S

Soto Platform

:copyright: — Suite of static analysis tools consisting of the three components Sotoarc (Architecture Analysis), Sotograph (Quality Analysis), and Sotoreport (Quality report). Helps find differences between architecture and implementation, interface violations (e.g. external access of private parts of subsystems, detection of all classes, files, packages and subsystems which are strongly coupled by cyclical relationships and more. The Sotograph product family runs on Windows and Linux.

Multiple languages
S

SourceMeter

:copyright: — Static Code Analysis for C/C++, Java, C#, Python, and RPG III and RPG IV versions (including free-form).

Multiple languages
S

sqlvet

— Performs static analysis on raw SQL queries in your Go code base to surface potential runtime errors. It checks for SQL syntax error, identifies unsafe queries that could potentially lead to SQL injections makes sure column count matches value count in INSERT statements and validates table- and column names.

Multiple languages
S

StaticReviewer

:copyright: — Static Reviewer executes code checks according to the most relevant Secure Coding Standards, OWASP, CWE, CVE, CVSS, MISRA, CERT, for 40+ programming languages, using 1000+ built-in validation rules for Security, Deadcode & Best Practices Available a module for Software Composition Analysis (SCA) to find vulnerabilities in open source and third party libraries.

Multiple languages
S

Super-Linter

— Combination of multiple linters to install as a GitHub Action.

Multiple languages
S

Svace

:copyright: — Static code analysis tool for Java,C,C++,C#,Go.

Multiple languages
S

Synopsys

:copyright: — A commercial static analysis platform that allows for scanning of multiple languages (C/C++, Android, C#, Java, JS, PHP, Python, Node.JS, Ruby, Fortran, and Swift).

Multiple languages
T

Teamscale

:copyright: — Static and dynamic analysis tool supporting more than 25 languages and direct IDE integration. Free hosting for Open Source projects available on request. Free academic licenses available.

Multiple languages
T

TencentCodeAnalysis

— Tencent Cloud Code Analysis (TCA for short, code-named CodeDog inside the company early) is a comprehensive platform for code analysis and issue tracking. TCA consist of three components, server, web and client. It integrates of a number of self-developed tools, and also supports dynamic integration of code analysis tools in various programming languages.

Multiple languages
T

ThreatMapper

— Vulnerability Scanner and Risk Evaluation for containers, serverless and hosts at runtime. ThreatMapper generates runtime BOMs from dependencies and operating system packages, matches against multiple threat feeds, scans for unprotected secrets, and scores issues based on severity and risk-of-exploit.

Multiple languages
T

todocheck

— Linter for integrating annotated TODOs with your issue trackers

Multiple languages
T

trivy

— A Simple and Comprehensive Vulnerability Scanner for Containers and other Artifacts, Suitable for CI. Trivy detects vulnerabilities of OS packages (Alpine, RHEL, CentOS, etc.) and application dependencies (Bundler, Composer, npm, yarn, etc.). Checks containers and filesystems.

Multiple languages
T

trunk

:copyright: — Modern repositories include many technologies, each with its own set of linters. With 30+ linters and counting, Trunk makes it dead-simple to identify, install, configure, and run the right linters, static analyzers, and formatters for all your repos.

Multiple languages
T

TscanCode

— A fast and accurate static analysis solution for C/C++, C#, Lua codes provided by Tencent. Using GPLv3 license.

Multiple languages
U

Undebt

— Language-independent tool for massive, automatic, programmable refactoring based on simple pattern definitions.

Multiple languages
U

Understand

:copyright: — Code visualization tool that provides code analysis, standards testing, metrics, graphing, dependency analysis and more for Ada, VHDL, and others.

Multiple languages
U

Unibeautify

— Universal code beautifier with a GitHub app. Supports HTML, CSS, JavaScript, TypeScript, JSX, Vue, C++, Go, Objective-C, Java, Python, PHP, GraphQL, Markdown, and more.

Multiple languages
U

Upsource

:copyright: — Code review tool with static code analysis and code-aware navigation for Java, PHP, JavaScript and Kotlin.

Multiple languages
V

Veracode

:copyright: — Find flaws in binaries and bytecode without requiring source. Support all major programming languages: Java, .NET, JavaScript, Swift, Objective-C, C, C++ and more.

Multiple languages
W

WALA

— Static analysis capabilities for Java bytecode and related languages and for JavaScript.

Multiple languages
W

weggli

— A fast and robust semantic search tool for C and C++ codebases. It is designed to help security researchers identify interesting functionality in large codebases.

Multiple languages
W

WhiteHat Application Security Platform

:copyright: — WhiteHat Scout (for Developers) combined with WhiteHat Sentinel Source (for Operations) supporting WhiteHat Top 40 and OWASP Top 10.

Multiple languages
W

Wotan

:warning: — Pluggable TypeScript and JavaScript linter.

Multiple languages
X

XCode

:copyright: — XCode provides a pretty decent UI for Clang's static code analyzer (C/C++, Obj-C).

Multiple languages

Other(232 items)

A

actionlint

— Static checker for GitHub Actions workflow files. Provides an online version.

Other
A

After the Deadline

:warning: — Spell, style and grammar checker.

Other
A

alex

— Catch insensitive, inconsiderate writing

Other
A

alquitran

— Inspects tar archives and tries to spot portability issues in regard to POSIX 2017 pax specification and common tar implementations.

Other
A

anchore

— Discover, analyze, and certify container images. A service that analyzes Docker images and applies user-defined acceptance policies to allow automated container image validation and certification

Other
A

Android Lint

— Run static analysis on Android projects.

Other
A

android-lint-summary

:warning: — Combines lint errors of multiple projects into one output, check lint results of multiple sub-projects at once.

Other
A

angr

— Binary code analysis tool that also supports symbolic execution.

Other
A

Angular ESLint

— Linter for Angular projects

Other
A

ansible-lint

— Checks playbooks for practices and behaviour that could potentially be improved.

Other
A

AWS CloudFormation Guard

— Check local CloudFormation templates against policy-as-code rules and generate rules from existing templates.

Other
A

AzSK

— Secure DevOps kit for Azure (AzSK) provides security IntelliSense, Security Verification Tests (SVTs), CICD scan vulnerabilities, compliance issues, and infrastructure misconfiguration in your infrastructure-as-code. Supports Azure via ARM.

Other
A

AzSK

— Secure DevOps kit for Azure (AzSK) provides security IntelliSense, Security Verification Tests (SVTs), CICD scan vulnerabilities, compliance issues, and infrastructure misconfiguration in your infrastructure-as-code. Supports Azure via ARM.

Other
A

AzSK

— Secure DevOps kit for Azure (AzSK) provides security IntelliSense, Security Verification Tests (SVTs), CICD scan vulnerabilities, compliance issues, and infrastructure misconfiguration in your infrastructure-as-code. Supports Azure via ARM.

Other
A

AzSK

— Secure DevOps kit for Azure (AzSK) provides security IntelliSense, Security Verification Tests (SVTs), CICD scan vulnerabilities, compliance issues, and infrastructure misconfiguration in your infrastructure-as-code. Supports Azure via ARM.

Other
B

binbloom

— Analyzes a raw binary firmware and determines features like endianness or the loading address. The tool is compatible with all architectures.

Other
B

BinSkim

— A binary static analysis tool that provides security and correctness results for Windows portable executables.

Other
B

Black Duck

:copyright: — Tool to analyze source code and binaries for reusable code, necessary licenses and potential security aspects.

Other
B

bloaty

— Ever wondered what's making your binary big? Bloaty McBloatface will show you a size profile of the binary so you can understand what's taking up space inside. Bloaty performs a deep analysis of the binary. Using custom ELF, DWARF, and Mach-O parsers, Bloaty aims to accurately attribute every byte of the binary to the symbol or compileunit that produced it. It will even disassemble the binary looking for references to anonymous data. F

Other
B

Bootlint

:warning: — An HTML linter for Bootstrap projects.

Other
B

brakeman

— A static analysis security vulnerability scanner for Ruby on Rails applications.

Other
B

buf

— Provides a CLI linter that enforces good API design choices and structure

Other
C

cargo-bloat

:warning: — Find out what takes most of the space in your executable. supports ELF (Linux, BSD), Mach-O (macOS) and PE (Windows) binaries.

Other
C

cfn-lint

— AWS Labs CloudFormation linter.

Other
C

cfn_nag

— A linter for AWS CloudFormation templates.

Other
C

chart-testing

— ct is the tool for testing Helm charts. It is meant to be used for linting and testing pull requests. It automatically detects charts changed against the target branch.

Other
C

checkmake

— Linter / Analyzer for Makefiles.

Other
C

checkmake

— Linter / Analyzer for Makefiles.

Other
C

checkov

— Static analysis tool for Terraform files (tf>=v0.12), preventing cloud misconfigs at build time.

Other
C

ChkTeX

— A linter for LaTex which catches some typographic errors LaTeX oversees.

Other
C

ciocheck

:warning: — Linter, formatter and test suite helper. As a linter, it is a wrapper around `pep8`, `pydocstyle`, `flake8`, and `pylint`.

Other
C

clair

— Vulnerability Static Analysis for Containers.

Other
C

Cloud (IaC) Security for JetBrains IDEs

— Cloud (IaC) Security plugin for JetBrains IDEs. Performs real-time inspections of Docker & Kubernetes IaC with 50+ rules based on Docker image/build security best practices, Kubernetes Pod Security Standards, and NSA/CISA Kubernetes Hardening Guidance.

Other
C

Cloud (IaC) Security for JetBrains IDEs

— Cloud (IaC) Security plugin for JetBrains IDEs. Performs real-time inspections of Docker & Kubernetes IaC with 50+ rules based on Docker image/build security best practices, Kubernetes Pod Security Standards, and NSA/CISA Kubernetes Hardening Guidance.

Other
C

Cloud (IaC) Security for JetBrains IDEs

— Cloud (IaC) Security plugin for JetBrains IDEs. Performs real-time inspections of Docker & Kubernetes IaC with 50+ rules based on Docker image/build security best practices, Kubernetes Pod Security Standards, and NSA/CISA Kubernetes Hardening Guidance.

Other
C

clusterlint

— Clusterlint queries live Kubernetes clusters for resources, executes common and platform specific checks against these resources and provides actionable feedback to cluster operators. It is a non invasive tool that is run externally. Clusterlint does not alter the resource configurations.

Other
C

Code Climate

— The open and extensible static analysis platform, for everyone.

Other
C

Codecov

:copyright: — Codecov is a company that provides code coverage tools for developers and engineering leaders to gain visibility into their code coverage.

Other
C

CodeRabbit

:copyright: — AI-powered code review tool that helps developers write better code faster. CodeRabbit provides automated code reviews, identifies security vulnerabilities, and suggests code improvements. It integrates with GitHub and GitLab.

Other
C

codespell

— Check code for common misspellings.

Other
C

collector

:warning: — Run arbitrary scripts inside containers, and gather useful information.

Other
C

commitlint

— checks if your commit messages meet the conventional commit format

Other
C

composer-dependency-analyser

— Fast detection of composer dependency issues.

Other
C

composer-dependency-analyser

— Fast detection of composer dependency issues.

Other
C

cookstyle

— Cookstyle is a linting tool based on the RuboCop Ruby linting tool for Chef cookbooks.

Other
C

Credential Digger

— Credential Digger is a GitHub scanning tool that identifies hardcoded credentials (Passwords, API Keys, Secret Keys, Tokens, personal information, etc), and filtering the false positive data through a machine learning model called Password Model. This scanner is able to detect passwords and non structured tokens with a low false positive rate.

Other
C

CSS Stats

— Potentially interesting stats on stylesheets.

Other
C

CSScomb

— A coding style formatter for CSS. Supports own configurations to make style sheets beautiful and consistent.

Other
C

CSSLint

— Does basic syntax checking and finds problematic patterns or signs of inefficiency.

Other
C

cwe_checker

— cwe_checker finds vulnerable patterns in binary executables.

Other
D

dagda

:warning: — Perform static analysis of known vulnerabilities in docker images/containers.

Other
D

Datree

— A CLI tool to prevent Kubernetes misconfigurations by ensuring that manifests and Helm charts follow best practices as well as your organization’s policies

Other
D

Datree

— A CLI tool to prevent Kubernetes misconfigurations by ensuring that manifests and Helm charts follow best practices as well as your organization’s policies

Other
D

dawnscanner

— A static analysis security scanner for ruby written web applications. It supports Sinatra, Padrino and Ruby on Rails frameworks.

Other
D

deadnix

— Scan Nix files for dead code (unused variable bindings)

Other
D

dennis

:warning: — A set of utilities for working with PO files to ease development and improve quality.

Other
D

deno_lint

— Official linter for Deno.

Other
D

detect-secrets

— An enterprise friendly way of detecting and preventing secrets in code.

Other
D

Diffblue

:copyright: — Diffblue is a software company that provides AI-powered code analysis and testing solutions for software development teams.

Other
D

Docker Label Inspector

:warning: — Lint and validate Dockerfile labels.

Other
D

dotenv-linter

— Linting dotenv files like a charm.

Other
D

dotenv-linter (Rust)

— Lightning-fast linter for .env files. Written in Rust

Other
E

ember-template-lint

— Linter for Ember or Handlebars templates.

Other
E

Enlightn

:warning: — A static and dynamic analysis tool for Laravel applications that provides recommendations to improve the performance, security and code reliability of Laravel apps. Contains 120 automated checks.

Other
E

Enlightn

:warning: — A static and dynamic analysis tool for Laravel applications that provides recommendations to improve the performance, security and code reliability of Laravel apps. Contains 120 automated checks.

Other
E

ERB Lint

— Lint your ERB or HTML files

Other
E

ERB Lint

— Lint your ERB or HTML files

Other
E

exakat

— An automated code reviewing engine for PHP.

Other
F

flake8

— A wrapper around `pyflakes`, `pycodestyle` and `mccabe`.

Other
F

flakeheaven

— flakeheaven is a python linter built around flake8 to enable inheritable and complex toml configuration.

Other
F

FlowDroid

— Static taint analysis tool for Android applications.

Other
F

foodcritic

— A lint tool that checks Chef cookbooks for common problems.

Other
G

gherkin-lint

— A linter for the Gherkin-Syntax written in Javascript.

Other
G

Ghidra

— A software reverse engineering (SRE) suite of tools developed by NSA's Research Directorate in support of the Cybersecurity mission

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

GitGuardian ggshield

— ggshield is a CLI application that runs in your local environment or in a CI environment to help you detect more than 350+ types of secrets, as well as other potential security vulnerabilities or policy breaks affecting your codebase.

Other
G

Gitleaks

— A SAST tool for detecting hardcoded secrets like passwords, api keys, and tokens in git repos.

Other
G

gixy

— A tool to analyze Nginx configuration. The main goal is to prevent misconfiguration and automate flaw detection.

Other
G

Go Meta Linter

:warning: — Concurrently run Go lint tools and normalise their output. Use `golangci-lint` for new projects.

Other
G

Goblint

— A static analyzer for the analysis of multi-threaded C programs. Its primary focus is the detection of data races, but it also reports other runtime errors, such as buffer overflows and null-pointer dereferences.

Other
G

gokart

— Golang security analysis with a focus on minimizing false positives. It is capable of tracing the source of variables and function arguments to determine whether input sources are safe.

Other
G

goreporter

— Concurrently runs many linters and normalises their output to a report.

Other
G

GraphMyCSS.com

— CSS Specificity Graph Generator.

Other
G

grunt-bootlint

:warning: — A Grunt wrapper for Bootlint, the HTML linter for Bootstrap projects.

Other
G

gulp-bootlint

:warning: — A gulp wrapper for Bootlint, the HTML linter for Bootstrap projects.

Other
H

haml-lint

— Tool for writing clean and consistent HAML.

Other
H

Haskell Dockerfile Linter

— A smarter Dockerfile linter that helps you build best practice Docker images.

Other
H

HasMySecretLeaked

:copyright: — HasMySecretLeaked is a project from GitGuardian that aims to help individual users and organizations search across 20 million exposed secrets to verify if their developer secrets have leaked on public repositories, gists, and issues on GitHub projects.

Other
H

HasMySecretLeaked

:copyright: — HasMySecretLeaked is a project from GitGuardian that aims to help individual users and organizations search across 20 million exposed secrets to verify if their developer secrets have leaked on public repositories, gists, and issues on GitHub projects.

Other
H

Hopper

:copyright: — macOS and Linux reverse engineering tool that lets you disassemble, decompile and debug applications. Hopper displays the code using different representations, e.g. the Control Flow Graph, and the pseudo-code of a procedure. Supports Apple Silicon.

Other
H

HTML Inspector

:warning: — HTML Inspector is a code quality tool to help you and your team write better markup.

Other
H

HTML Tidy

— Corrects and cleans up HTML and XML documents by fixing markup errors and upgrading legacy code to modern standards.

Other
H

HTML-Validate

— Offline HTML5 validator.

Other
H

HTML-Validate

— Offline HTML5 validator.

Other
H

htmlbeautifier

— A normaliser/beautifier for HTML that also understands embedded Ruby. Ideal for tidying up Rails templates.

Other
H

htmlbeautifier

— A normaliser/beautifier for HTML that also understands embedded Ruby. Ideal for tidying up Rails templates.

Other
H

HTMLHint

— A Static Code Analysis Tool for HTML.

Other
I

iblessing

:warning: — iblessing is an iOS security exploiting toolkit. It can be used for reverse engineering, binary analysis and vulnerability mining.

Other
I

iblessing

:warning: — iblessing is an iOS security exploiting toolkit. It can be used for reverse engineering, binary analysis and vulnerability mining.

Other
I

IDA Free

:copyright: — Binary code analysis tool.

Other
J

Jakstab

— Jakstab is an Abstract Interpretation-based, integrated disassembly and static analysis framework for designing analyses on executables and recovering reliable control flow graphs.

Other
J

JEB Decompiler

:copyright: — Decompile and debug binary code. Break down and analyze document files. Android Dalvik, MIPS, ARM, Intel x86, Java, WebAssembly & Ethereum Decompilers.

Other
J

jsonlint

— A JSON parser and validator with a CLI. Standalone version of jsonlint.com

Other
K

kani

— The Kani Rust Verifier is a bit-precise model checker for Rust.

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

kics

— Find security vulnerabilities, compliance issues, and infrastructure misconfigurations in your infrastructure-as-code. Supports Terraform, Kubernetes, Docker, AWS CloudFormation and Ansible

Other
K

klint

— A tool that listens to changes in Kubernetes resources and runs linting rules against them. Identify and debug erroneous objects and nudge objects in line with the policies as both change over time. Klint helps us encode checks and proactively alert teams when they need to take action.

Other
K

krane

— Krane is a simple Kubernetes RBAC static analysis tool.

Other
K

krane

— Krane is a simple Kubernetes RBAC static analysis tool.

Other
K

ktool

— Fully cross-platform toolkit and library for MachO+Obj-C editing/analysis. Includes a cli kit, a curses GUI, ObjC header dumping, and much more.

Other
K

ktool

— Fully cross-platform toolkit and library for MachO+Obj-C editing/analysis. Includes a cli kit, a curses GUI, ObjC header dumping, and much more.

Other
K

kube-hunter

:warning: — Hunt for security weaknesses in Kubernetes clusters.

Other
K

kube-hunter

:warning: — Hunt for security weaknesses in Kubernetes clusters.

Other
K

kube-lint

— A linter for Kubernetes resources with a customizable rule set. You define a list of rules that you would like to validate against your resources and kube-lint will evaluate those rules against them.

Other
K

kube-linter

— KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices.

Other
K

kube-score

— Static code analysis of your Kubernetes object definitions.

Other
K

kubeconform

— A fast Kubernetes manifests validator with support for custom resources.

Other
K

KubeLinter

— KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices.

Other
K

kubeval

— Validates your Kubernetes configuration files and supports multiple Kubernetes versions.

Other
L

lacheck

— A tool for finding common mistakes in LaTeX documents.

Other
L

languagetool

— Style and grammar checker for 25+ languages. It finds many errors that a simple spell checker cannot detect.

Other
L

larastan

— Adds static analysis to Laravel improving developer productivity and code quality. It is a wrapper around PHPStan.

Other
L

LibVCS4j

— A Java library that allows existing tools to analyse the evolution of software systems by providing a common API for different version control systems and issue trackers.

Other
L

lintian

— Static analysis tool for Debian packages.

Other
L

lockfile-lint

— Lint an npm or yarn lockfile to analyze and detect security issues

Other
L

lockfile-lint

— Lint an npm or yarn lockfile to analyze and detect security issues

Other
L

LunaSec

:warning: — Open Source AppSec platform that automatically notifies you the next time vulnerabilities like Log4Shell or node-ipc happen. Track your dependencies and builds in a centralized service.

Other
M

Manalyze

:warning: — A static analyzer, which checks portable executables for malicious content.

Other
M

Mariana Trench

— Our security focused static analysis tool for Android and Java applications. Mariana Trench analyzes Dalvik bytecode and is built to run fast on large codebases (10s of millions of lines of code). It can find vulnerabilities as code changes, before it ever lands in your repository.

Other
M

markdownlint

— Node.js -based style checker and lint tool for Markdown/CommonMark files.

Other
M

mcsema

:warning: — Framework for lifting x86, amd64, aarch64, sparc32, and sparc64 program binaries to LLVM bitcode. It translates ("lifts") executable binaries from native machine code to LLVM bitcode, which is very useful for performing program analysis methods.

Other
M

mdformat

— CommonMark compliant Markdown formatter

Other
M

mdl

:warning: — A tool to check Markdown files and flag style issues.

Other
M

mdsf

— Format markdown code blocks using your favorite code formatters.

Other
M

metadata-json-lint

— Tool to check the validity of Puppet metadata.json files.

Other
M

metadata-json-lint

— Tool to check the validity of Puppet metadata.json files.

Other
M

misspell-fixer

:warning: — Quick tool for fixing common misspellings, typos in source code.

Other
M

Misspelled Words In Context

— A spell-checker that groups possible misspellings and shows them in their contexts.

Other
M

multilint

:warning: — A wrapper around `flake8`, `isort` and `modernize`.

Other
M

mythril

— A symbolic execution framework with batteries included, can be used to find and exploit vulnerabilities in smart contracts automatically.

Other
M

MythX

:copyright: — MythX is an easy to use analysis platform which integrates several analysis methods like fuzzing, symbolic execution and static analysis to find vulnerabilities with high precision. It can be integrated with toolchains like Remix or VSCode or called from the command-line.

Other
N

Nauz File Detector

— Static Linker/Compiler/Tool detector for Windows, Linux and MacOS.

Other
N

njsscan

— A static application testing (SAST) tool that can find insecure code patterns in your node.js applications using simple pattern matcher from libsast and syntax-aware semantic code pattern search tool semgrep.

Other
N

njsscan

— A static application testing (SAST) tool that can find insecure code patterns in your node.js applications using simple pattern matcher from libsast and syntax-aware semantic code pattern search tool semgrep.

Other
N

NodeJSScan

— A static security code scanner for Node.js applications powered by libsast and semgrep that builds on the njsscan cli tool. It features a UI with various dashboards about an application's security status.

Other
N

NodeJSScan

— A static security code scanner for Node.js applications powered by libsast and semgrep that builds on the njsscan cli tool. It features a UI with various dashboards about an application's security status.

Other
N

Nu Html Checker

— Helps you catch problems in your HTML/CSS/SVG

Other
N

Nu Html Checker

— Helps you catch problems in your HTML/CSS/SVG

Other
O

oelint-adv

— Linter for bitbake recipes used in open-embedded and YOCTO

Other
O

OpenSCAP

— Suite of automated audit tools to examine the configuration and known vulnerabilities following the NIST-certified Security Content Automation Protocol (SCAP).

Other
O

Oversecured

:copyright: — Enterprise vulnerability scanner for Android and iOS apps. It allows app owners and developers to secure each new version of a mobile app by integrating Oversecured into the development process.

Other
O

Oversecured

:copyright: — Enterprise vulnerability scanner for Android and iOS apps. It allows app owners and developers to secure each new version of a mobile app by integrating Oversecured into the development process.

Other
P

packj

:warning: — Packj (pronounced package) is a command line (CLI) tool to vet open-source software packages for "risky" attributes that make them vulnerable to supply chain attacks. This is the tool behind our large-scale security analysis platform Packj.dev that continuously vets packages and provides free reports.

Other
P

paprika

:warning: — A toolkit to detect some code smells in analyzed Android applications.

Other
P

Parker

:warning: — Stylesheet analysis tool.

Other
P

Polymer-analyzer

— A static analysis framework for Web Components.

Other
P

portlint

— A verifier for FreeBSD and DragonFlyBSD port directories.

Other
P

portlint

— A verifier for FreeBSD and DragonFlyBSD port directories.

Other
P

PostCSS

— A tool for transforming styles with JS plugins. These plugins can lint your CSS, support variables and mixins, transpile future CSS syntax, inline images, and more.

Other
P

Project Wallace CSS Analyzer

— Analytics for CSS, part of Project Wallace.

Other
P

promformat

:warning: — Promformat is a PromQL formatter written in Python.

Other
P

promval

— PromQL validator written in Python. It can be used to validate that PromQL expressions are written as expected.

Other
P

proselint

— A linter for English prose with a focus on writing style instead of grammar.

Other
P

prospector

— A wrapper around `pylint`, `pep8`, `mccabe` and others.

Other
P

protolint

— Pluggable linter and fixer to enforce Protocol Buffer style and conventions.

Other
P

PT Application Inspector

:copyright: — Identifies code flaws and detects vulnerabilities to prevent web attacks. Demonstrates remote code execution by presenting possible exploits.

Other
P

PullRequest

:copyright: — Code review as a service with built-in static analysis. Increase velocity and reduce technical debt through quality code review by expert engineers backed by best-in-class automation.

Other
P

Puppet Lint

:warning: — Check that your Puppet manifests conform to the style guide.

Other
P

pure

:warning: — Pure is a static analysis file format checker that checks ZIP files for dangerous compression ratios, spec deviations, malicious archive signatures, mismatching local and central directory headers, ambiguous UTF-8 filenames, directory and symlink traversals, invalid MS-DOS dates, overlapping headers, overflow, underflow, sparseness, accidental buffer bleeds etc.

Other
Q

qark

:warning: — Tool to look for several security related Android application vulnerabilities.

Other
Q

quality

:warning: — Runs quality checks on your code using community tools, and makes sure your numbers don't get any worse over time.

Other
Q

Qualys Container Security

:copyright: — Container native application protection to provide visibility and control of containerized applications.

Other
Q

Qualys Container Security

:copyright: — Container native application protection to provide visibility and control of containerized applications.

Other
Q

QuantifiedCode

:warning: — Automated code review & repair. It helps you to keep track of issues and metrics in your software projects, and can be easily extended to support new types of analyses.

Other
Q

QuantifiedCode

:warning: — Automated code review & repair. It helps you to keep track of issues and metrics in your software projects, and can be easily extended to support new types of analyses.

Other
R

redex

— Redex provides a framework for reading, writing, and analyzing .dex files, and a set of optimization passes that use this framework to improve the bytecode. An APK optimized by Redex should be smaller and faster.

Other
R

RefactorFirst

— Identifies and prioritizes God Classes and Highly Coupled classes in Java codebases you should refactor first.

Other
R

RefactorFirst

— Identifies and prioritizes God Classes and Highly Coupled classes in Java codebases you should refactor first.

Other
R

remark-lint

— Pluggable Markdown code style linter written in JavaScript.

Other
R

Reviewdog

— A tool for posting review comments from any linter in any code hosting service.

Other
R

Rezilion

:copyright: — Discovers vulnerabilities for all components in your environment, filters out 85% non-exploitable vulnerabilities and creates a remediation plan and open tickets to upgrade components that violate your security policy and/or patch automatically in CI.

Other
R

rpmlint

— Tool for checking common errors in rpm packages.

Other
R

rust-audit

— Audit Rust binaries for known bugs or security vulnerabilities. This works by embedding data about the dependency tree (Cargo.lock) in JSON format into a dedicated linker section of the compiled executable.

Other
S

sass-lint

:warning: — A Node-only Sass linter for both sass and scss syntax.

Other
S

scorecard

— Security Scorecards - Security health metrics for Open Source

Other
S

scsslint

:warning: — Linter for SCSS files.

Other
S

SearchDiggity

:copyright: — Identifies vulnerabilities in open source code projects hosted on Github, Google Code, MS CodePlex, SourceForge, and more. The tool comes with over 130 default searches that identify SQL injection, cross-site scripting (XSS), insecure remote and local file includes, hard-coded passwords, etc.

Other
S

shisho

:warning: — A lightweight static code analyzer designed for developers and security teams. It allows you to analyze and transform source code with an intuitive DSL similar to sed, but for code.

Other
S

slim-lint

— Configurable tool for analyzing Slim templates.

Other
S

slither

— Static analysis framework that runs a suite of vulnerability detectors, prints visual information about contract details, and provides an API to easily write custom analyses.

Other
S

solhint

— Solhint is an open source project created by https://protofire.io. Its goal is to provide a linting utility for Solidity code.

Other
S

solium

— Solium is a linter to identify and fix style and security issues in Solidity smart contracts.

Other
S

Specificity Graph

— CSS Specificity Graph Generator.

Other
S

Spectral

— A flexible JSON/YAML linter, with out-of-the-box support for OpenAPI v2/v3 and AsyncAPI v2.

Other
S

Spectral

— A flexible JSON/YAML linter, with out-of-the-box support for OpenAPI v2/v3 and AsyncAPI v2.

Other
S

standard

— An npm module that checks for Javascript Styleguide issues.

Other
S

statix

— Lints and suggestions for the Nix programming language. "statix check" highlights antipatterns in Nix code. "statix fix" can fix several such occurrences.

Other
S

Steampunk Spotter

:copyright: — Ansible Playbook Scanning Tool that analyzes and offers recommendations for your playbooks.

Other
S

Steampunk Spotter

:copyright: — Ansible Playbook Scanning Tool that analyzes and offers recommendations for your playbooks.

Other
S

Steampunk Spotter

:copyright: — Ansible Playbook Scanning Tool that analyzes and offers recommendations for your playbooks.

Other
S

Stylelint

— Linter for SCSS/CSS files.

Other
S

Symfony Insight

:copyright: — Detect security risks, find bugs and provide actionable metrics for PHP projects.

Other
S

Symfony Insight

:copyright: — Detect security risks, find bugs and provide actionable metrics for PHP projects.

Other
S

sysdig

:copyright: — A secure DevOps platform for cloud and container forensics. Built on an open source stack, Sysdig provides Docker image scanning and created Falco, the open standard for runtime threat detection for containers, Kubernetes and cloud.

Other
T

terraform-compliance

— A lightweight, compliance- and security focused, BDD test framework against Terraform.

Other
T

terrascan

— Collection of security and best practice tests for static code analysis of Terraform templates.

Other
T

TeXLab

— A Language Server Protocol implementation for TeX/LaTeX, including lint capabilities.

Other
T

textlint

— textlint is an open source text linting utility written in JavaScript.

Other
T

tflint

— A Terraform linter for detecting errors that can not be detected by `terraform plan`.

Other
T

tfsec

— Terraform static analysis tool that prevents potential security issues by checking cloud misconfigurations at build time and directly integrates with the HCL parser for better results. Checks for violations of AWS, Azure and GCP security best practice recommendations.

Other
T

tfsec

— Terraform static analysis tool that prevents potential security issues by checking cloud misconfigurations at build time and directly integrates with the HCL parser for better results. Checks for violations of AWS, Azure and GCP security best practice recommendations.

Other
T

trufflehog

— Find credentials all over the place

Other
T

Tsunami Security Scanner

— A general purpose network security scanner with an extensible plugin system for detecting high severity RCE-like vulnerabilities with high confidence. Custom detectors for finding vulnerabilities (e.g. open APIs) can be added.

Other
T

Twiggy

— Analyzes a binary's call graph to profile code size. The goal is to slim down wasm binary size.

Other
V

vale

— A syntax-aware linter for prose built with speed and extensibility in mind.

Other
V

Vetur

:warning: — Vue tooling for VS Code, powered by vls (vue language server). Vetur has support for formatting embedded HTML, CSS, SCSS, JS, TypeScript, and more. Vetur only has a "whole document formatter" and cannot format arbitrary ranges.

Other
V

Violations Lib

— Java library for parsing report files from static code analysis. Used by a bunch of Jenkins, Maven and Gradle plugins.

Other
V

Violations Lib

— Java library for parsing report files from static code analysis. Used by a bunch of Jenkins, Maven and Gradle plugins.

Other
V

VMware chap

— chap analyzes un-instrumented ELF core files for leaks, memory growth, and corruption. It is sufficiently reliable that it can be used in automation to catch leaks before they are committed. As an interactive tool, it helps explain memory growth, can identify some forms of corruption, and supplements a debugger by giving the status of various memory locations.

Other
V

Vuls

— Agent-less Linux vulnerability scanner based on information from NVD, OVAL, etc. It has some container image support, although is not a container specific tool.

Other
W

write-good

— A linter with a focus on eliminating "weasel words".

Other
Y

yamllint

— Checks YAML files for syntax validity, key repetition and cosmetic problems such as lines length, trailing spaces, and indentation.

Other
Y

yamllint

— Checks YAML files for syntax validity, key repetition and cosmetic problems such as lines length, trailing spaces, and indentation.

Other
Z

zydis

— Fast and lightweight x86/x86-64 disassembler library

Other

Programming Languages(461 items)

.

.NET Analyzers

— An organization for the development of analyzers (diagnostics and code fixes) using the .NET Compiler Platform.

Programming Languages
A

abaplint

— Linter for ABAP, written in TypeScript.

Programming Languages
A

abapOpenChecks

— Enhances the SAP Code Inspector with new and customizable checks.

Programming Languages
A

aether

:warning: — Lint, analyze, normalize, transform, sandbox, run, step through, and visualize user JavaScript, in node or the browser.

Programming Languages
A

aligncheck

— Find inefficiently packed structs.

Programming Languages
A

ameba

— A static code analysis tool for Crystal.

Programming Languages
A

Angular ESLint

— Linter for Angular projects

Programming Languages
A

ArchUnitNET

— A C# architecture test library to specify and assert architecture rules in C# for automated testing.

Programming Languages
A

Astrée

:copyright: — Astrée automatically proves the absence of runtime errors and invalid con­current behavior in C/C++ applications. It is sound for floating-point computations, very fast, and exceptionally precise. The analyzer also checks for MISRA/CERT/CWE/Adaptive Autosar coding rules and supports qualification for ISO 26262, DO-178C level A, and other safety standards. Jenkins and Eclipse plugins are available.

Programming Languages
A

Astrée

:copyright: — Astrée automatically proves the absence of runtime errors and invalid con­current behavior in C/C++ applications. It is sound for floating-point computations, very fast, and exceptionally precise. The analyzer also checks for MISRA/CERT/CWE/Adaptive Autosar coding rules and supports qualification for ISO 26262, DO-178C level A, and other safety standards. Jenkins and Eclipse plugins are available.

Programming Languages
A

autoflake

— Autoflake removes unused imports and unused variables from Python code.

Programming Languages
A

autopep8

— A tool that automatically formats Python code to conform to the PEP 8 style guide.

Programming Languages
B

bandit

— A tool to find common security issues in Python code.

Programming Languages
B

bashate

— Code style enforcement for bash programs. The output format aims to follow pycodestyle (pep8) default output format.

Programming Languages
B

bellybutton

— A linting engine supporting custom project-specific rules.

Programming Languages
B

Black

— The uncompromising Python code formatter.

Programming Languages
B

bodyclose

— Checks whether HTTP response body is closed.

Programming Languages
B

Bowler

— Safe code refactoring for modern Python. Bowler is a refactoring tool for manipulating Python at the syntax tree level. It enables safe, large scale code modifications while guaranteeing that the resulting code compiles and runs. It provides both a simple command line interface and a fluent API in Python for generating complex code modifications in code.

Programming Languages
B

brakeman

— A static analysis security vulnerability scanner for Ruby on Rails applications.

Programming Languages
B

brittany

:warning: — Haskell source code formatter

Programming Languages
B

bundler-audit

— Audit Gemfile.lock for gems with security vulnerabilities reported in Ruby Advisory Database.

Programming Languages
C

C2Rust

— C2Rust helps you migrate C99-compliant code to Rust. The translator (or transpiler) produces unsafe Rust code that closely mirrors the input C code.

Programming Languages
C

CakeFuzzer

— Web application security testing tool for CakePHP-based web applications. CakeFuzzer employs a predefined set of attacks that are randomly modified before execution. Leveraging its deep understanding of the Cake PHP framework, Cake Fuzzer launches attacks on all potential application entry points.

Programming Languages
C

cane

:warning: — Code quality threshold checking as part of your build.

Programming Languages
C

cargo udeps

— Find unused dependencies in Cargo.toml. It either prints out a "unused crates" line listing the crates, or it prints out a line saying that no crates were unused.

Programming Languages
C

cargo-audit

— Audit Cargo.lock for crates with security vulnerabilities reported to the RustSec Advisory Database.

Programming Languages
C

cargo-bloat

:warning: — Find out what takes most of the space in your executable. supports ELF (Linux, BSD), Mach-O (macOS) and PE (Windows) binaries.

Programming Languages
C

cargo-breaking

— cargo-breaking compares a crate's public API between two different branches, shows what changed, and suggests the next version according to semver.

Programming Languages
C

cargo-call-stack

— Whole program static stack analysis The tool produces the full call graph of a program as a dot file.

Programming Languages
C

cargo-deny

— A cargo plugin for linting your dependencies. It can be used either as a command line too, a Rust crate, or a Github action for CI. It checks for valid license information, duplicate crates, security vulnerabilities, and more.

Programming Languages
C

cargo-expand

— Cargo subcommand to show result of macro expansion and #[derive] expansion applied to the current crate. This is a wrapper around a more verbose compiler command.

Programming Languages
C

cargo-geiger

— A cargo plugin for analysing the usage of unsafe Rust code Provides statistical output to aid security auditing

Programming Languages
C

cargo-inspect

:warning: — Inspect Rust code without syntactic sugar to see what the compiler does behind the curtains.

Programming Languages
C

cargo-semver-checks

— Scan your Rust crate releases for semver violations. It can be used either directly via the CLI, as a GitHub Action in CI, or via release managers like `release-plz`. It found semver violations in more than 1 in 6 of the top 1000 most-downloaded crates on crates.io.

Programming Languages
C

cargo-show-asm

— cargo subcommand showing the assembly, LLVM-IR and MIR generated for Rust code

Programming Languages
C

cargo-spellcheck

— Checks all your documentation for spelling and grammar mistakes with hunspell (ready) and languagetool (preview)

Programming Languages
C

cargo-unused-features

— Find potential unused enabled feature flags and prune them. You can generate a simple HTML report from the json to make it easier to inspect results.

Programming Languages
C

CBMC

— Bounded model-checker for C programs, user-defined assertions, standard assertions, several coverage metric analyses.

Programming Languages
C

CBMC

— Bounded model-checker for C programs, user-defined assertions, standard assertions, several coverage metric analyses.

Programming Languages
C

Checker Framework

— Pluggable type-checking for Java. This is not just a bug-finder, but a verification tool that gives a guarantee of correctness. It comes with 27 pre-built type systems, and it enables users to define their own type system; the manual lists over 30 user-contributed type systems.

Programming Languages
C

checkstyle

— Checking Java source code for adherence to a Code Standard or set of validation rules (best practices).

Programming Languages
C

Churn

:warning: — A Project to give the churn file, class, and method for a project for a given checkin. Over time the tool adds up the history of churns to give the number of times a file, class, or method is changing during the life of a project.

Programming Languages
C

churn-php

— Helps discover good candidates for refactoring.

Programming Languages
C

ciocheck

:warning: — Linter, formatter and test suite helper. As a linter, it is a wrapper around `pep8`, `pydocstyle`, `flake8`, and `pylint`.

Programming Languages
C

ck

— Calculates Chidamber and Kemerer object-oriented metrics by processing the source Java files.

Programming Languages
C

ckjm

— Calculates Chidamber and Kemerer object-oriented metrics by processing the bytecode of compiled Java files.

Programming Languages
C

clang-tidy

— Clang-based C++ linter tool with the (limited) ability to fix issues, too.

Programming Languages
C

clang-tidy

— Clang-based C++ linter tool with the (limited) ability to fix issues, too.

Programming Languages
C

clazy

— Qt-oriented static code analyzer based on the Clang framework. clazy is a compiler plugin which allows clang to understand Qt semantics. You get more than 50 Qt related compiler warnings, ranging from unneeded memory allocations to misusage of API, including fix-its for automatic refactoring.

Programming Languages
C

clazy

— Qt-oriented static code analyzer based on the Clang framework. clazy is a compiler plugin which allows clang to understand Qt semantics. You get more than 50 Qt related compiler warnings, ranging from unneeded memory allocations to misusage of API, including fix-its for automatic refactoring.

Programming Languages
C

clippy

— A code linter to catch common mistakes and improve your Rust code.

Programming Languages
C

clj-kondo

— A linter for Clojure code that sparks joy. It informs you about potential errors while you are typing.

Programming Languages
C

Closure Compiler

— A compiler tool to increase efficiency, reduce size, and provide code warnings in JavaScript files.

Programming Languages
C

ClosureLinter

:warning: — Ensures that all of your project's JavaScript code follows the guidelines in the Google JavaScript Style Guide. It can also automatically fix many common errors.

Programming Languages
C

CMetrics

— Measures size and complexity for C files.

Programming Languages
C

CMetrics

— Measures size and complexity for C files.

Programming Languages
C

code-cracker

— An analyzer library for C# and VB that uses Roslyn to produce refactorings, code analysis, and other niceties.

Programming Languages
C

CodeDepends

:warning: — Static Code Analysis for R.

Programming Languages
C

Codelyzer

:warning: — A set of tslint rules for static code analysis of Angular 2 TypeScript projects.

Programming Languages
C

CodeNarc

— A static analysis tool for Groovy source code, enabling monitoring and enforcement of many coding standards and best practices.

Programming Languages
C

Codepeer

:copyright: — Detects run-time and logic errors.

Programming Languages
C

coffeelint

:warning: — A style checker that helps keep CoffeeScript code clean and consistent.

Programming Languages
C

CogniCrypt

— Checks Java source and byte code for incorrect uses of cryptographic APIs.

Programming Languages
C

cohesion

— A tool for measuring Python class cohesion.

Programming Languages
C

complexity-report

:warning: — Software complexity analysis for JavaScript projects.

Programming Languages
C

composer-dependency-analyser

— Fast detection of composer dependency issues.

Programming Languages
C

CPAchecker

— A tool for configurable software verification of C programs. The name CPAchecker was chosen to reflect that the tool is based on the CPA concepts and is used for checking software programs.

Programming Languages
C

cppcheck

— Static analysis of C/C++ code.

Programming Languages
C

cppcheck

— Static analysis of C/C++ code.

Programming Languages
C

CppDepend

:copyright: — Measure, query and visualize your code and avoid unexpected issues, technical debt and complexity.

Programming Languages
C

CppDepend

:copyright: — Measure, query and visualize your code and avoid unexpected issues, technical debt and complexity.

Programming Languages
C

cpplint

— Automated C++ checker that follows Google's style guide.

Programming Languages
C

cpplint

— Automated C++ checker that follows Google's style guide.

Programming Languages
C

cqmetrics

— Quality metrics for C code.

Programming Languages
C

cqmetrics

— Quality metrics for C code.

Programming Languages
C

credo

— A static code analysis tool with a focus on code consistency and teaching.

Programming Languages
C

crystal

— The Crystal compiler has built-in linting functionality.

Programming Languages
C

CScout

— Complexity and quality metrics for C and C preprocessor code.

Programming Languages
C

CScout

— Complexity and quality metrics for C and C preprocessor code.

Programming Languages
C

CSharpEssentials

:warning: — C# Essentials is a collection of Roslyn diagnostic analyzers, code fixes and refactorings that make it easy to work with C# 6 language features.

Programming Languages
C

cyclocomp

— Quantifies the cyclomatic complexity of R functions / expressions.

Programming Languages
D

D-scanner

— D-Scanner is a tool for analyzing D source code.

Programming Languages
D

Dart Code Metrics

:warning: — Additional linter for Dart. Reports code metrics, checks for anti-patterns and provides additional rules for Dart analyzer.

Programming Languages
D

Dataflow Framework

— An industrial-strength dataflow framework for Java. The Dataflow Framework is used in the Checker Framework, Google’s Error Prone, Uber’s NullAway, Meta’s Nullsafe, and in other contexts. It is distributed with the Checker Framework.

Programming Languages
D

dawnscanner

— A static analysis security scanner for ruby written web applications. It supports Sinatra, Padrino and Ruby on Rails frameworks.

Programming Languages
D

dbcritic

— dbcritic finds problems in a database schema, such as a missing primary key constraint in a table.

Programming Languages
D

deadcode

— Finds unused code.

Programming Languages
D

deal

— Design by contract for Python. Write bug-free code. By adding a few decorators to your code, you get for free tests, static analysis, formal verification, and much more.

Programming Languages
D

DeepScan

:copyright: — An analyzer for JavaScript which targets runtime errors and quality issues rather than coding conventions.

Programming Languages
D

DelphiLint

— A Delphi IDE package providing on-the-fly code analysis and linting, powered by SonarDelphi.

Programming Languages
D

dephpend

— Dependency analysis tool.

Programming Languages
D

deprecation-detector

— Finds usages of deprecated (Symfony) code.

Programming Languages
D

deptrac

— Enforce rules for dependencies between software layers.

Programming Languages
D

Designite

:copyright: — Designite supports detection of various architecture, design, and implementation smells, computation of various code quality metrics, and trend analysis.

Programming Languages
D

DesigniteJava

:copyright: — DesigniteJava supports detection of various architecture, design, and implementation smells along with computation of various code quality metrics.

Programming Languages
D

DesignPatternDetector

— Detection of design patterns in PHP code.

Programming Languages
D

detekt

— Static code analysis for Kotlin code.

Programming Languages
D

dialyxir

— Mix tasks to simplify use of Dialyzer in Elixir projects.

Programming Languages
D

dialyzer

— The DIALYZER, a DIscrepancy AnaLYZer for ERlang programs. Dialyzer is a static analysis tool that identifies software discrepancies, such as definite type errors, code that has become dead or unreachable because of programming error, and unnecessary tests, in single Erlang modules or entire (sets of) applications.

Programming Languages
D

diff.rs

— Web application (WASM) to render a diff between Rust crate versions.

Programming Languages
D

Diffblue

:copyright: — Diffblue is a software company that provides AI-powered code analysis and testing solutions for software development teams.

Programming Languages
D

diktat

— Strict coding standard for Kotlin and a linter that detects and auto-fixes code smells.

Programming Languages
D

dingo-hunter

:warning: — Static analyser for finding deadlocks in Go.

Programming Languages
D

Dlint

— A tool for ensuring Python code is secure.

Programming Languages
D

Dodgy

— Dodgy is a very basic tool to run against your codebase to search for "dodgy" looking values. It is a series of simple regular expressions designed to detect things such as accidental SCM diff checkins, or passwords or secret keys hard coded into files.

Programming Languages
D

dogsled

— Finds assignments/declarations with too many blank identifiers.

Programming Languages
D

Doop

— Doop is a declarative framework for static analysis of Java/Android programs, centered on pointer analysis algorithms. Doop provides a large variety of analyses and also the surrounding scaffolding to run an analysis end-to-end (fact generation, processing, statistics, etc.).

Programming Languages
D

DrNim

— DrNim combines the Nim frontend with the Z3 proof engine in order to allow verify / validate software written in Nim.

Programming Languages
D

dupl

:warning: — Reports potentially duplicated code.

Programming Languages
D

dylint

— A tool for running Rust lints from dynamic libraries. Dylint makes it easy for developers to maintain their own personal lint collections.

Programming Languages
E

EasyCodingStandard

— Combine PHPCodeSniffer and PHP-CS-Fixer.

Programming Languages
E

effective_dart

— Linter rules corresponding to the guidelines in Effective Dart

Programming Languages
E

electrolysis

:warning: — A tool for formally verifying Rust programs by transpiling them into definitions in the Lean theorem prover.

Programming Languages
E

elm-analyse

:warning: — A tool that allows you to analyse your Elm code, identify deficiencies and apply best practices.

Programming Languages
E

elm-review

— Analyzes whole Elm projects, with a focus on shareable and custom rules written in Elm that add guarantees the Elm compiler doesn't give you.

Programming Languages
E

elvis

— Erlang Style Reviewer.

Programming Languages
E

Enlightn

:warning: — A static and dynamic analysis tool for Laravel applications that provides recommendations to improve the performance, security and code reliability of Laravel apps. Contains 120 automated checks.

Programming Languages
E

ENRE-cpp

— ENRE (ENtity Relationship Extractor) is a tool for extraction of code entity dependencies or relationships from source code. ENRE-cpp is a ENtity Relationship Extractor for C/C++ based on @eclipse/CDT. (Under development)

Programming Languages
E

ENRE-cpp

— ENRE (ENtity Relationship Extractor) is a tool for extraction of code entity dependencies or relationships from source code. ENRE-cpp is a ENtity Relationship Extractor for C/C++ based on @eclipse/CDT. (Under development)

Programming Languages
E

ENRE-java

:warning: — ENRE (ENtity Relationship Extractor) is a tool for extraction of code entity dependencies or relationships from source code. ENRE-java is a ENtity Relationship Extractor for Java projects based on @Eclipse JDT/parser.

Programming Languages
E

ENRE-py

:warning: — ENRE (ENtity Relationship Extractor) is a tool for extraction of code entity dependencies or relationships from source code. ENRE-py is a ENtity Relationship Extractor for Python based on Python Language Services of The Standard Library.

Programming Languages
E

ENRE-ts

— ENRE (ENtity Relationship Extractor) is a tool for extraction of code entity dependencies or relationships from source code. ENRE-ts is a ENtity Relationship Extractor for ECMAScript and TypeScript based on @babel/parser.

Programming Languages
E

ERB Lint

— Lint your ERB or HTML files

Programming Languages
E

errcheck

— Check that error return values are used.

Programming Languages
E

Error Prone

— Catch common Java mistakes as compile-time errors.

Programming Languages
E

errwrap

— Wrap and fix Go errors with the new %w verb directive. This tool analyzes fmt.Errorf() calls and reports calls that contain a verb directive that is different than the new %w verb directive introduced in Go v1.13. It's also capable of rewriting calls to use the new %w wrap verb directive.

Programming Languages
E

es6-plato

:warning: — Visualize JavaScript (ES6) source complexity.

Programming Languages
E

ESBMC

— ESBMC is an open source, permissively licensed, context-bounded model checker based on satisfiability modulo theories for the verification of single- and multi-threaded C/C++ programs.

Programming Languages
E

ESBMC

— ESBMC is an open source, permissively licensed, context-bounded model checker based on satisfiability modulo theories for the verification of single- and multi-threaded C/C++ programs.

Programming Languages
E

escomplex

:warning: — Software complexity analysis of JavaScript-family abstract syntax trees.

Programming Languages
E

Esprima

:warning: — ECMAScript parsing infrastructure for multipurpose analysis.

Programming Languages
E

exakat

— An automated code reviewing engine for PHP.

Programming Languages
F

fantomas

— F# source code formatter.

Programming Languages
F

Fasterer

— Common Ruby idioms checker.

Programming Languages
F

fb-contrib

— A plugin for FindBugs with additional bug detectors.

Programming Languages
F

Fix Insight

:copyright: — A free IDE Plugin for static code analysis. A Pro edition includes a command line tool for automation purposes.

Programming Languages
F

Fixinator

:copyright: — Static security code analysis for ColdFusion or CFML code. Designed to work within a CI pipeline or from the developers terminal.

Programming Languages
F

fixit

— A framework for creating lint rules and corresponding auto-fixes for source code.

Programming Languages
F

flake8

— A wrapper around `pyflakes`, `pycodestyle` and `mccabe`.

Programming Languages
F

flakeheaven

— flakeheaven is a python linter built around flake8 to enable inheritable and complex toml configuration.

Programming Languages
F

flawfinder

:warning: — Finds possible security weaknesses.

Programming Languages
F

flawfinder

:warning: — Finds possible security weaknesses.

Programming Languages
F

flay

:warning: — Flay analyzes code for structural similarities.

Programming Languages
F

flen

— Get info on length of functions in a Go package.

Programming Languages
F

flint++

:warning: — Cross-platform, zero-dependency port of flint, a lint program for C++ developed and used at Facebook.

Programming Languages
F

flint++

:warning: — Cross-platform, zero-dependency port of flint, a lint program for C++ developed and used at Facebook.

Programming Languages
F

flog

:warning: — Flog reports the most tortured code in an easy to read pain report. The higher the score, the more pain the code is in.

Programming Languages
F

flow

— A static type checker for JavaScript.

Programming Languages
F

flowR

— A program slicer and dataflow analyzer for the R programming language. Its slicer allows you to reduce a complicated program just to the parts related for a specific task (e.g., the generation of a single or collection of plots, a significance test, ...). The dataflow analysis provides you with a detailed view on the semantics of the R code which can greatly improve other analyses. To use flowR_, check out the Visual Studio Code extension, the RStudio Addin, the Docker image, or the R package.

Programming Languages
F

forbidden-apis

— Detects and forbids invocations of specific method/class/field (like reading from a text stream without a charset). Maven/Gradle/Ant compatible.

Programming Languages
F

Fortitude

— Fortran linter, inspired by (and built on) Ruff, and based on community best practices. Supports latest Fortran (2023) standard.

Programming Languages
F

fprettify

:warning: — Auto-formatter for modern fortran source code, written in Python.

Programming Languages
F

Frama-C

— A sound and extensible static analyzer for C code.

Programming Languages
F

Frama-C

— A sound and extensible static analyzer for C code.

Programming Languages
F

Frink

— A Tcl formatting and static check program (can prettify the program, minimise, obfuscate or just sanity check it).

Programming Languages
F

FSharpLint

— Lint tool for F#.

Programming Languages
F

fta

— Rust-based static analysis for TypeScript projects

Programming Languages
F

Fukuzatsu

— A tool for measuring code complexity in Ruby class files. Its analysis generates scores based on cyclomatic complexity algorithms with no added "opinions".

Programming Languages
G

gawk --lint

— Warns about constructs that are dubious or nonportable to other awk implementations.

Programming Languages
G

GCC

— The GCC compiler has static analysis capabilities since version 10. This option is only available if GCC was configured with analyzer support enabled. It can also output its diagnostics to a JSON file in the SARIF format (from v13).

Programming Languages
G

Gendarme

— Gendarme inspects programs and libraries that contain code in ECMA CIL format (Mono and .NET).

Programming Languages
G

Go Meta Linter

:warning: — Concurrently run Go lint tools and normalise their output. Use `golangci-lint` for new projects.

Programming Languages
G

go tool vet --shadow

— Reports variables that may have been unintentionally shadowed.

Programming Languages
G

go vet

— Examines Go source code and reports suspicious.

Programming Languages
G

go-consistent

— Analyzer that helps you to make your Go programs more consistent.

Programming Languages
G

go-critic

— Go source code linter that maintains checks which are currently not implemented in other linters.

Programming Languages
G

go/ast

— Package ast declares the types used to represent syntax trees for Go packages.

Programming Languages
G

goast

:warning: — Go AST (Abstract Syntax Tree) based static analysis tool with Rego.

Programming Languages
G

Goblint

— A static analyzer for the analysis of multi-threaded C programs. Its primary focus is the detection of data races, but it also reports other runtime errors, such as buffer overflows and null-pointer dereferences.

Programming Languages
G

gochecknoglobals

— Checks that no globals are present.

Programming Languages
G

goconst

— Finds repeated strings that could be replaced by a constant.

Programming Languages
G

gocyclo

:warning: — Calculate cyclomatic complexities of functions in Go source code.

Programming Languages
G

gofmt -s

— Checks if the code is properly formatted and could not be further simplified.

Programming Languages
G

gofumpt

— Enforce a stricter format than `gofmt`, while being backwards-compatible. That is, `gofumpt` is happy with a subset of the formats that `gofmt` is happy with.

Programming Languages
G

goimports

— Checks missing or unreferenced package imports.

Programming Languages
G

gokart

— Golang security analysis with a focus on minimizing false positives. It is capable of tracing the source of variables and function arguments to determine whether input sources are safe.

Programming Languages
G

GolangCI-Lint

— Alternative to `Go Meta Linter`: GolangCI-Lint is a linters aggregator.

Programming Languages
G

golint

— Prints out coding style mistakes in Go source code.

Programming Languages
G

goodpractice

— Analyses the source code for R packages and provides best-practice recommendations.

Programming Languages
G

google-java-format

— Reformats Java source code to comply with Google Java Style

Programming Languages
G

goreporter

— Concurrently runs many linters and normalises their output to a report.

Programming Languages
G

goroutine-inspect

— An interactive tool to analyze Golang goroutine dump.

Programming Languages
G

gosec (gas)

— Inspects source code for security problems by scanning the Go AST.

Programming Languages
G

gotype

— Syntactic and semantic analysis similar to the Go compiler.

Programming Languages
G

govulncheck

— Govulncheck reports known vulnerabilities that affect Go code. It uses static analysis of source code or a binary's symbol table to narrow down reports to only those that could affect the application.

Programming Languages
G

Griffe

— Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API.

Programming Languages
G

GrumPHP

— Checks code on every commit.

Programming Languages
H

Haxe Checkstyle

— A static analysis tool to help developers write Haxe code that adheres to a coding standard.

Programming Languages
H

hegel

:warning: — A static type checker for JavaScript with a bias on type inference and strong type systems.

Programming Languages
H

Helix QAC

:copyright: — Enterprise-grade static analysis for embedded software. Supports MISRA, CERT, and AUTOSAR coding standards.

Programming Languages
H

Helix QAC

:copyright: — Enterprise-grade static analysis for embedded software. Supports MISRA, CERT, and AUTOSAR coding standards.

Programming Languages
H

herbie

:warning: — Adds warnings or errors to your crate when using a numerically unstable floating point expression.

Programming Languages
H

HLint

— HLint is a tool for suggesting possible improvements to Haskell code.

Programming Languages
H

holistic

— More than 1,300 rules to analyze SQL queries. Takes an SQL schema definition and the query source code to generate improvement recommendations. Detects code smells, unused indexes, unused tables, views, materialized views, and more.

Programming Languages
H

htmlbeautifier

— A normaliser/beautifier for HTML that also understands embedded Ruby. Ideal for tidying up Rails templates.

Programming Languages
H

HuntBugs

:warning: — Bytecode static analyzer tool based on Procyon Compiler Tools aimed to supersede FindBugs.

Programming Languages
I

i-Code CNES for Fortran

— An open source static code analysis tool for Fortran 77, Fortran 90 and Shell.

Programming Languages
I

i-Code CNES for Shell

— An open source static code analysis tool for Shell and Fortran (77 and 90).

Programming Languages
I

Icarus Verilog

— A Verilog simulation and synthesis tool that operates by compiling source code written in IEEE-1364 Verilog into some target format

Programming Languages
I

IKOS

— A sound static analyzer for C/C++ code based on LLVM.

Programming Languages
I

IKOS

— A sound static analyzer for C/C++ code based on LLVM.

Programming Languages
I

ineffassign

— Detect ineffectual assignments in Go code.

Programming Languages
I

Infer#

:warning: — InferSharp (also referred to as Infer#) is an interprocedural and scalable static code analyzer for C#. Via the capabilities of Facebook's Infer, this tool detects null pointer dereferences and resource leaks.

Programming Languages
I

InspectorTiger

:warning: — IT, Inspector Tiger, is a modern python code review tool / framework. It comes with bunch of pre-defined handlers which warns you about improvements and possible bugs. Beside these handlers, you can write your own or use community ones.

Programming Languages
I

IntelliJ IDEA

:copyright: — Comes bundled with a lot of inspections for Java and Kotlin and includes tools for refactoring, formatting and more.

Programming Languages
I

interfacer

:warning: — Suggest narrower interfaces that can be used.

Programming Languages
I

ionide-analyzers

— A collection of F# analyzers, built with the FSharp.Analyzers.SDK.

Programming Languages
J

JArchitect

:copyright: — Measure, query and visualize your code and avoid unexpected issues, technical debt and complexity.

Programming Languages
J

JBMC

— Bounded model-checker for Java (bytecode), verifies user-defined assertions, standard assertions, several coverage metric analyses.

Programming Languages
J

jedi

— Autocompletion/static analysis library for Python.

Programming Languages
J

JET

— Static type inference system to detect bugs and type instabilities.

Programming Languages
J

Joern

— Open-source code analysis platform for C/C++ based on code property graphs

Programming Languages
J

Joern

— Open-source code analysis platform for C/C++ based on code property graphs

Programming Languages
J

jshint

[:information_source:]() — Detect errors and potential problems in JavaScript code and enforce your team's coding conventions.

Programming Languages
J

JSLint

[:information_source:]() — The JavaScript Code Quality Tool.

Programming Languages
J

JSPrime

:warning: — Static security analysis tool.

Programming Languages
K

kani

— The Kani Rust Verifier is a bit-precise model checker for Rust.

Programming Languages
K

KLEE

— A dynamic symbolic execution engine built on top of the LLVM compiler infrastructure. It can auto-generate test cases for programs such that the test cases exercise as much of the program as possible.

Programming Languages
K

KLEE

— A dynamic symbolic execution engine built on top of the LLVM compiler infrastructure. It can auto-generate test cases for programs such that the test cases exercise as much of the program as possible.

Programming Languages
K

kmdr

— CLI tool for learning commands from your terminal. kmdr delivers a break down of commands with every attribute explained.

Programming Languages
K

ktfmt

— A program that reformats Kotlin source code to comply with the common community standard for Kotlin code conventions.

Programming Languages
K

ktlint

— An anti-bikeshedding Kotlin linter with built-in formatter.

Programming Languages
L

larastan

— Adds static analysis to Laravel improving developer productivity and code quality. It is a wrapper around PHPStan.

Programming Languages
L

laser

:warning: — Static analysis and style linter for Ruby code.

Programming Languages
L

LDRA

:copyright: — A tool suite including static analysis (TBVISION) to various standards including MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ & Custom Rules.

Programming Languages
L

LDRA

:copyright: — A tool suite including static analysis (TBVISION) to various standards including MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ & Custom Rules.

Programming Languages
L

lint

— An opinionated, community-driven set of lint rules for Dart and Flutter projects. Like pedantic but stricter

Programming Languages
L

linter

:warning: — Linter is a Scala static analysis compiler plugin which adds compile-time checks for various possible bugs, inefficiencies, and style problems.

Programming Languages
L

Linter for dart

— Style linter for Dart.

Programming Languages
L

linter-rust

:warning: — Linting your Rust-files in Atom, using rustc and cargo.

Programming Languages
L

lintr

— Static Code Analysis for R.

Programming Languages
L

linty fresh

— Parse lint errors and report them to Github as comments on a pull request.

Programming Languages
L

Liquid Haskell

— Liquid Haskell is a refinement type checker for Haskell programs.

Programming Languages
L

lll

:warning: — Report long lines.

Programming Languages
L

lockbud

— Statically detects Rust deadlocks bugs. It currently detects two common kinds of deadlock bugs: doublelock and locks in conflicting order. It will print bugs in JSON format together with the source code location and an explanation of each bug.

Programming Languages
L

luacheck

— A tool for linting and static analysis of Lua code.

Programming Languages
L

lualint

— lualint performs luac-based static analysis of global variable usage in Lua source code.

Programming Languages
L

Luanalysis

:warning: — An IDE for statically typed Lua development.

Programming Languages
M

maligned

:warning: — Detect structs that would take less memory if their fields were sorted.

Programming Languages
M

Mariana Trench

— Our security focused static analysis tool for Android and Java applications. Mariana Trench analyzes Dalvik bytecode and is built to run fast on large codebases (10s of millions of lines of code). It can find vulnerabilities as code changes, before it ever lands in your repository.

Programming Languages
M

MATE

:warning: — A suite of tools for interactive program analysis with a focus on hunting for bugs in C and C++ code. MATE unifies application-specific and low-level vulnerability analysis using code property graphs (CPGs), enabling the discovery of highly application-specific vulnerabilities that depend on both implementation details and the high-level semantics of target C/C++ programs.

Programming Languages
M

MATE

:warning: — A suite of tools for interactive program analysis with a focus on hunting for bugs in C and C++ code. MATE unifies application-specific and low-level vulnerability analysis using code property graphs (CPGs), enabling the discovery of highly application-specific vulnerabilities that depend on both implementation details and the high-level semantics of target C/C++ programs.

Programming Languages
M

mccabe

:warning: — Check McCabe complexity.

Programming Languages
M

MetricFu

:warning: — MetricFu is a set of tools to provide reports that show which parts of your code might need extra work.

Programming Languages
M

Meziantou.Analyzer

— A Roslyn analyzer to enforce some good practices in C# in terms of design, usage, security, performance, and style.

Programming Languages
M

MIRAI

— And abstract interpreter operating on Rust's mid-level intermediate language, and providing warnings based on taint analysis.

Programming Languages
M

misspell

— Finds commonly misspelled English words.

Programming Languages
M

mlint

:copyright: — Check MATLAB code files for possible problems.

Programming Languages
M

Mondrian

:warning: — A set of static analysis and refactoring tools which use graph theory.

Programming Languages
M

multilint

:warning: — A wrapper around `flake8`, `isort` and `modernize`.

Programming Languages
M

mypy

— A static type checker that aims to combine the benefits of duck typing and static typing, frequently used with MonkeyType.

Programming Languages
N

Nagelfar

— A static syntax checker for Tcl.

Programming Languages
N

nakedret

— Finds naked returns.

Programming Languages
N

nargs

— Finds unused arguments in function declarations.

Programming Languages
N

NDepend

:copyright: — Measure, query and visualize your code and avoid unexpected issues, technical debt and complexity.

Programming Languages
N

nimfmt

— Nim code formatter / linter / style checker

Programming Languages
N

NodeJSScan

— A static security code scanner for Node.js applications powered by libsast and semgrep that builds on the njsscan cli tool. It features a UI with various dashboards about an application's security status.

Programming Languages
N

NullAway

— Type-based null-pointer checker with low build-time overhead; an Error Prone plugin.

Programming Languages
O

OWASP Dependency Check

— Checks dependencies for known, publicly disclosed, vulnerabilities.

Programming Languages
P

parallel-lint

— This tool checks syntax of PHP files faster than serial check with a fancier output.

Programming Languages
P

Parse

— A Static Security Scanner.

Programming Languages
P

Pascal Analyzer

:copyright: — A static code analysis tool with numerous reports. A free Lite version is available with limited reporting.

Programming Languages
P

Pascal Expert

:copyright: — IDE plugin for code analysis. Includes a subset of Pascal Analyzer reporting capabilities and is available for Delphi versions 2007 and later.

Programming Languages
P

PC-lint

:copyright: — Static analysis for C/C++. Runs natively under Windows/Linux/MacOS. Analyzes code for virtually any platform, supporting C11/C18 and C++17.

Programming Languages
P

PC-lint

:copyright: — Static analysis for C/C++. Runs natively under Windows/Linux/MacOS. Analyzes code for virtually any platform, supporting C11/C18 and C++17.

Programming Languages
P

pdepend

:warning: — Calculates software metrics like cyclomatic complexity for PHP code.

Programming Languages
P

pelusa

— Static analysis Lint-type tool to improve your OO Ruby code.

Programming Languages
P

Perl::Analyzer

— Perl-Analyzer is a set of programs and modules that allow users to analyze and visualize Perl codebases by providing information about namespaces and their relations, dependencies, inheritance, and methods implemented, inherited, and redefined in packages, as well as calls to methods from parent packages via SUPER.

Programming Languages
P

Perl::Critic

— Critique Perl source code for best-practices.

Programming Languages
P

perltidy

— Perltidy is a Perl script which indents and reformats Perl scripts to make them easier to read.

Programming Languages
P

pgspot

— Spot vulnerabilities in postgres extension scripts. Finds unsafe search_path usage and unsafe object creation in PostgreSQL extension scripts or any other PostgreSQL SQL code.

Programming Languages
P

phan

— A modern static analyzer from etsy.

Programming Languages
P

Phasar

— A LLVM-based static analysis framework which comes with a taint and type state analysis.

Programming Languages
P

Phasar

— A LLVM-based static analysis framework which comes with a taint and type state analysis.

Programming Languages
P

PHP Architecture Tester

— Easy to use architecture testing tool for PHP.

Programming Languages
P

PHP Assumptions

— Checks for weak assumptions.

Programming Languages
P

PHP Coding Standards Fixer

— Fixes your code according to standards like PSR-1, PSR-2, and the Symfony standard.

Programming Languages
P

PHP Insights

— Instant PHP quality checks from your console. Analysis of code quality and coding style as well as overview of code architecture and its complexity.

Programming Languages
P

Php Inspections (EA Extended)

— A Static Code Analyzer for PHP.

Programming Languages
P

PHP Refactoring Browser

— Refactoring helper.

Programming Languages
P

PHP Semantic Versioning Checker

:warning: — Suggests a next version according to semantic versioning.

Programming Languages
P

PHP-Parser

— A PHP parser written in PHP.

Programming Languages
P

php-speller

— PHP spell check library.

Programming Languages
P

PHP-Token-Reflection

:warning: — Library emulating the PHP internal reflection.

Programming Languages
P

php7cc

:warning: — PHP 7 Compatibility Checker.

Programming Languages
P

php7mar

:warning: — Assist developers in porting their code quickly to PHP 7.

Programming Languages
P

PHPArkitect

— PHPArkitect helps you to keep your PHP codebase coherent and solid, by permitting to add some architectural constraint check to your workflow. You can express the constraint that you want to enforce, in simple and readable PHP code.

Programming Languages
P

phpca

:warning: — Finds usage of non-built-in extensions.

Programming Languages
P

phpcpd

:warning: — Copy/Paste Detector for PHP code.

Programming Languages
P

phpdcd

:warning: — Dead Code Detector (DCD) for PHP code.

Programming Languages
P

PhpDependencyAnalysis

:warning: — Builds a dependency graph for a project.

Programming Languages
P

PhpDeprecationDetector

:warning: — Analyzer of PHP code to search issues with deprecated functionality in newer interpreter versions. It finds removed objects (functions, variables, constants and ini-directives), deprecated functions functionality, and usage of forbidden names or tricks (e.g. reserved identifiers in newer versions).

Programming Languages
P

phpdoc-to-typehint

:warning: — Add scalar type hints and return types to existing PHP projects using PHPDoc annotations.

Programming Languages
P

phpDocumentor

— Analyzes PHP source code to generate documentation.

Programming Languages
P

phploc

— A tool for quickly measuring the size and analyzing the structure of a PHP project.

Programming Languages
P

PHPMD

— Finds possible bugs in your code.

Programming Languages
P

PhpMetrics

— Calculates and visualizes various code quality metrics.

Programming Languages
P

phpmnd

— Helps to detect magic numbers.

Programming Languages
P

PHPQA

— A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).

Programming Languages
P

phpqa - jakzal

— Many tools for PHP static analysis in one container.

Programming Languages
P

phpqa - jmolivas

— PHPQA all-in-one Analyzer CLI tool.

Programming Languages
P

phpsa

:warning: — Static analysis tool for PHP.

Programming Languages
P

PHPStan

— PHP Static Analysis Tool - discover bugs in your code without running it!

Programming Languages
P

PHP_CodeSniffer

:warning: — Detects violations of a defined set of coding standards.

Programming Languages
P

plato

:warning: — Visualize JavaScript source complexity.

Programming Languages
P

Polymer-analyzer

— A static analysis framework for Web Components.

Programming Languages
P

Polyspace Bug Finder

:copyright: — Identifies run-time errors, concurrency issues, security vulnerabilities, and other defects in C and C++ embedded software.

Programming Languages
P

Polyspace Bug Finder

:copyright: — Identifies run-time errors, concurrency issues, security vulnerabilities, and other defects in C and C++ embedded software.

Programming Languages
P

Polyspace Code Prover

:copyright: — Provide code verification that proves the absence of overflow, divide-by-zero, out-of-bounds array access, and certain other run-time errors in C and C++ source code.

Programming Languages
P

Polyspace Code Prover

:copyright: — Provide code verification that proves the absence of overflow, divide-by-zero, out-of-bounds array access, and certain other run-time errors in C and C++ source code.

Programming Languages
P

Polyspace for Ada

:copyright: — Provide code verification that proves the absence of overflow, divide-by-zero, out-of-bounds array access, and certain other run-time errors in source code.

Programming Languages
P

prae

:warning: — Provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you specified.

Programming Languages
P

prealloc

— Finds slice declarations that could potentially be preallocated.

Programming Languages
P

Primitive Erlang Security Tool (PEST)

:warning: — A tool to do a basic scan of Erlang source code and report any function calls that may cause Erlang source code to be insecure.

Programming Languages
P

Progpilot

— A static analysis tool for security purposes.

Programming Languages
P

prospector

— A wrapper around `pylint`, `pep8`, `mccabe` and others.

Programming Languages
P

Prusti

:warning: — A static verifier for Rust, based on the Viper verification infrastructure. By default Prusti verifies absence of panics by proving that statements such as unreachable!() and panic!() are unreachable.

Programming Languages
P

Psalm

— Static analysis tool for finding type errors in PHP applications.

Programming Languages
P

Puma Scan

— Puma Scan provides real time secure code analysis for common vulnerabilities (XSS, SQLi, CSRF, LDAPi, crypto, deserialization, etc.) as development teams write code in Visual Studio.

Programming Languages
P

py-find-injection

:warning: — Find SQL injection vulnerabilities in Python code.

Programming Languages
P

pyanalyze

— A tool for programmatically detecting common mistakes in Python code, such as references to undefined variables and type errors. It can be extended to add additional rules and perform checks specific to particular functions.

Programming Languages
P

pycodestyle

— (Formerly `pep8`) Check Python code against some of the style conventions in PEP 8.

Programming Languages
P

pydocstyle

:warning: — Check compliance with Python docstring conventions.

Programming Languages
P

pyflakes

— Check Python source files for errors.

Programming Languages
P

pylint

— Looks for programming errors, helps enforcing a coding standard and sniffs for some code smells. It additionally includes `pyreverse` (an UML diagram generator) and `symilar` (a similarities checker).

Programming Languages
P

pylyzers

— A static code analyzer / language server for Python, written in Rust, focused on type checking and readable output.

Programming Languages
P

pyre-check

— A fast, scalable type checker for large Python codebases.

Programming Languages
P

pyright

— Static type checker for Python, created to address gaps in existing tools like mypy.

Programming Languages
P

pyroma

— Rate how well a Python project complies with the best practices of the Python packaging ecosystem, and list issues that could be improved.

Programming Languages
P

Pysa

— A tool based on Facebook's pyre-check to identify potential security issues in Python code identified with taint analysis.

Programming Languages
P

PyT - Python Taint

:warning: — A static analysis tool for detecting security vulnerabilities in Python web applications.

Programming Languages
P

pytype

— A static type analyzer for Python code.

Programming Languages
P

pyupgrade

— A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.

Programming Languages
Q

Qafoo Quality Analyzer

:warning: — Visualizes metrics and source code.

Programming Languages
Q

quality

:warning: — Runs quality checks on your code using community tools, and makes sure your numbers don't get any worse over time.

Programming Languages
Q

QuantifiedCode

:warning: — Automated code review & repair. It helps you to keep track of issues and metrics in your software projects, and can be easily extended to support new types of analyses.

Programming Languages
Q

Querly

:warning: — Pattern Based Checking Tool for Ruby.

Programming Languages
Q

qulice

— Combines a few (pre-configured) static analysis tools (checkstyle, PMD, Findbugs, ...).

Programming Languages
R

R Language Server

— Provides code completion, refactoring, folding, diagnostics (with lintr), and more for R.

Programming Languages
R

radon

— A Python tool that computes various metrics from the source code.

Programming Languages
R

Railroader

:warning: — An open source static analysis security vulnerability scanner for Ruby on Rails applications.

Programming Languages
R

rails_best_practices

— A code metric tool for Rails projects

Programming Languages
R

rco

— Performance optimizer for R code (with GUI).

Programming Languages
R

rector

— Instant Upgrades and Automated Refactoring of any PHP 5.3+ code. It upgrades your code for PHP 7.4, 8.0 and beyond. Rector promises a low false-positive rate because it looks for narrowly defined AST (abstract syntax tree) patterns. The main use-case are tackling technical debt in your legacy code and removing dead code. Rector provides a set of special rules for Symfony, Doctrine, PHPUnit, and many more.

Programming Languages
R

reek

— Code smell detector for Ruby.

Programming Languages
R

RefactorFirst

— Identifies and prioritizes God Classes and Highly Coupled classes in Java codebases you should refactor first.

Programming Languages
R

Reflection

— Reflection library to do Static Analysis for PHP Projects

Programming Languages
R

refurb

— A tool for refurbishing and modernizing Python codebases. Refurb is heavily inspired by clippy, the built-in linter for Rust.

Programming Languages
R

Regal

— Regal is a linter for the policy language Rego. Regal aims to catch bugs and mistakes in policy code, while at the same time helping people learn the language, best practices and idiomatic constructs.

Programming Languages
R

retire.js

— Scanner detecting the use of JavaScript libraries with known vulnerabilities.

Programming Languages
R

Reviewdog

— A tool for posting review comments from any linter in any code hosting service.

Programming Languages
R

revive

— Fast, configurable, extensible, flexible, and beautiful linter for Go. Drop-in replacement of golint.

Programming Languages
R

Roodi

:warning: — Roodi stands for Ruby Object Oriented Design Inferometer. It parses your Ruby code and warns you about design issues you have based on the checks that it has configured.

Programming Languages
R

Roslynator

— A collection of 190+ analyzers and 190+ refactorings for C#, powered by Roslyn.

Programming Languages
R

RSLint

:warning: — A (WIP) JavaScript linter written in Rust designed to be as fast as possible, customizable, and easy to use.

Programming Languages
R

RuboCop

— A Ruby static code analyzer, based on the community Ruby style guide.

Programming Languages
R

Rubrowser

— Ruby classes interactive dependency graph generator.

Programming Languages
R

ruby-lint

:warning: — Static code analysis for Ruby.

Programming Languages
R

rubycritic

— A Ruby code quality reporter.

Programming Languages
R

Rudra

:warning: — Rust Memory Safety & Undefined Behavior Detection. It is capable of analyzing single Rust packages as well as all the packages on crates.io.

Programming Languages
R

ruff

— Fast Python linter, written in Rust. 10-100x faster than existing linters. Compatible with Python 3.10. Supports file watcher.

Programming Languages
R

rufo

— An opinionated ruby formatter, intended to be used via the command line as a text-editor plugin, to autoformat files on save or on demand.

Programming Languages
R

Rust Language Server

:warning: — Supports functionality such as 'goto definition', symbol search, reformatting, and code completion, and enables renaming and refactorings.

Programming Languages
R

rust-analyzer

— Supports functionality such as 'goto definition', type inference, symbol search, reformatting, and code completion, and enables renaming and refactorings.

Programming Languages
R

rust-audit

— Audit Rust binaries for known bugs or security vulnerabilities. This works by embedding data about the dependency tree (Cargo.lock) in JSON format into a dedicated linker section of the compiled executable.

Programming Languages
R

rustfix

— Read and apply the suggestions made by rustc (and third-party lints, like those offered by clippy).

Programming Languages
R

rustfmt

— A tool for formatting Rust code according to style guidelines.

Programming Languages
R

RustViz

— RustViz is a tool that generates visualizations from simple Rust programs to assist users in better understanding the Rust Lifetime and Borrowing mechanism. It generates SVG files with graphical indicators that integrate with mdbook to render visualizations of data-flow in Rust programs.

Programming Languages
S

safesql

:warning: — Static analysis tool for Golang that protects against SQL injections.

Programming Languages
S

Saikuro

:warning: — A Ruby cyclomatic complexity analyzer.

Programming Languages
S

SandiMeter

:warning: — Static analysis tool for checking Ruby code for Sandi Metz' rules.

Programming Languages
S

Scalastyle

— Scalastyle examines your Scala code and indicates potential problems with it.

Programming Languages
S

scan-build

— Frontend to drive the Clang Static Analyzer built into Clang via a regular build.

Programming Languages
S

scan-build

— Frontend to drive the Clang Static Analyzer built into Clang via a regular build.

Programming Languages
S

scapegoat

— Scala compiler plugin for static code analysis.

Programming Languages
S

sh

— A shell parser, formatter, and interpreter with bash support; includes shfmt

Programming Languages
S

shellcheck

— ShellCheck, a static analysis tool that gives warnings and suggestions for bash/sh shell scripts.

Programming Languages
S

shellharden

— A syntax highlighter and a tool to semi-automate the rewriting of scripts to ShellCheck conformance, mainly focused on quoting.

Programming Languages
S

shisho

:warning: — A lightweight static code analyzer designed for developers and security teams. It allows you to analyze and transform source code with an intuitive DSL similar to sed, but for code.

Programming Languages
S

sleek

— Sleek is a CLI tool for formatting SQL. It helps you maintain a consistent style across your SQL code, enhancing readability and productivity. The heavy lifting is done by the sqlformat crate.

Programming Languages
S

sobelow

— Security-focused static analysis for the Phoenix Framework.

Programming Languages
S

SonarAnalyzer.CSharp

— These Roslyn analyzers allow you to produce Clean Code that is safe, reliable, and maintainable by helping you find and correct bugs, vulnerabilities, and code smells in your codebase.

Programming Languages
S

SonarDelphi

— Delphi static analyzer for the SonarQube code quality platform.

Programming Languages
S

Soot

— A framework for analyzing and transforming Java and Android applications.

Programming Languages
S

Sorbet

— A fast, powerful type checker designed for Ruby.

Programming Languages
S

SPARK

:copyright: — Static analysis and formal verification toolset for Ada.

Programming Languages
S

splint

— Annotation-assisted static program checker.

Programming Languages
S

splint

— Annotation-assisted static program checker.

Programming Languages
S

Spoon

— Spoon is a metaprogramming library to analyze and transform Java source code (incl Java 9, 10, 11, 12, 13, 14). It parses source files to build a well-designed AST with powerful analysis and transformation API. Can be integrated in Maven and Gradle.

Programming Languages
S

SpotBugs

— SpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code.

Programming Languages
S

sqlcheck

:warning: — Automatically identify anti-patterns in SQL queries.

Programming Languages
S

SQLFluff

— Multiple dialect SQL linter and formatter.

Programming Languages
S

sqlint

— Simple SQL linter.

Programming Languages
S

squawk

— Linter for PostgreSQL, focused on migrations. Prevents unexpected downtime caused by database migrations and encourages best practices around Postgres schemas and SQL.

Programming Languages
S

Stan

— Stan is a command-line tool for analysing Haskell projects and outputting discovered vulnerabilities in a helpful way with possible solutions for detected problems.

Programming Languages
S

standard

— An npm module that checks for Javascript Styleguide issues.

Programming Languages
S

Standard Ruby

— Ruby Style Guide, with linter & automatic code fixer

Programming Languages
S

staticcheck

— Go static analysis that specialises in finding bugs, simplifying code and improving performance.

Programming Languages
S

StaticLint

— Static Code Analysis for Julia

Programming Languages
S

stc

:warning: — Speedy TypeScript type checker written in Rust

Programming Languages
S

steady

— Analyses your Java applications for open-source dependencies with known vulnerabilities, using both static analysis and testing to determine code context and usage for greater accuracy.

Programming Languages
S

Steep

— Gradual Typing for Ruby.

Programming Languages
S

STOKE

:warning: — A programming-language agnostic stochastic optimizer for the x86_64 instruction set. It uses random search to explore the extremely high-dimensional space of all possible program transformations.

Programming Languages
S

structcheck

— Find unused struct fields.

Programming Languages
S

structslop

— Static analyzer for Go that recommends struct field rearrangements to provide for maximum space/allocation efficiency

Programming Languages
S

styler

— Formatting of R source code files and pretty-printing of R code.

Programming Languages
S

SVF

— A static tool that enables scalable and precise interprocedural dependence analysis for C and C++ programs.

Programming Languages
S

SVF

— A static tool that enables scalable and precise interprocedural dependence analysis for C and C++ programs.

Programming Languages
S

svls

— A Language Server Protocol implementation for Verilog and SystemVerilog, including lint capabilities.

Programming Languages
S

SwiftFormat

— A library and command-line formatting tool for reformatting Swift code.

Programming Languages
S

SwiftLint

— A tool to enforce Swift style and conventions.

Programming Languages
S

Symfony Insight

:copyright: — Detect security risks, find bugs and provide actionable metrics for PHP projects.

Programming Languages
S

Sys

— A static/symbolic Tool for finding bugs in (browser) code. It uses the LLVM AST to find bugs like uninitialized memory access.

Programming Languages
T

Tailor

:warning: — A static analysis and lint tool for source code written in Apple's Swift programming language.

Programming Languages
T

tclchecker

— A static syntax analysis module (as part of TDK).

Programming Languages
T

tern

— A JavaScript code analyzer for deep, cross-editor language support.

Programming Languages
T

test

— Show location of test failures from the stdlib testing module.

Programming Languages
T

TrustInSoft Analyzer

:copyright: — Exhaustive detection of coding errors and their associated security vulnerabilities. This encompasses a sound undefined behavior detection (buffer overflows, out-of-bounds array accesses, null-pointer dereferences, use-after-free, divide-by-zeros, uninitialized memory accesses, signed overflows, invalid pointer arithmetic, etc.), data flow and control flow verification as well as full functional verification of formal specifications. All versions of C up to C18 and C++ up to C++20 are suppo...

Programming Languages
T

TrustInSoft Analyzer

:copyright: — Exhaustive detection of coding errors and their associated security vulnerabilities. This encompasses a sound undefined behavior detection (buffer overflows, out-of-bounds array accesses, null-pointer dereferences, use-after-free, divide-by-zeros, uninitialized memory accesses, signed overflows, invalid pointer arithmetic, etc.), data flow and control flow verification as well as full functional verification of formal specifications. All versions of C up to C18 and C++ up to C++20 are suppo...

Programming Languages
T

tslint

:warning: — TSLint has been deprecated as of 2019. Please see this issue for more details. `typescript-eslint` is now your best option for linting TypeScript.

Programming Languages
T

tslint-clean-code

— A set of TSLint rules inspired by the Clean Code handbook.

Programming Languages
T

tslint-microsoft-contrib

:warning: — A set of tslint rules for static code analysis of TypeScript projects maintained by Microsoft.

Programming Languages
T

tsqllint

— T-SQL-specific linter.

Programming Languages
T

TSqlRules

:warning: — TSQL Static Code Analysis Rules for SQL Server.

Programming Languages
T

Tuli

— A static analysis engine.

Programming Languages
T

twig-lint

— twig-lint is a lint tool for your twig files.

Programming Languages
T

Twiggy

— Analyzes a binary's call graph to profile code size. The goal is to slim down wasm binary size.

Programming Languages
T

TypeScript Call Graph

— CLI to generate an interactive graph of functions and calls from your TypeScript files

Programming Languages
T

TypeScript ESLint

— TypeScript language extension for eslint.

Programming Languages
T

TypL

:warning: — With TypL, you just write completely standard JS, and the tool figures out your types via powerful inferencing.

Programming Languages
U

unconvert

— Detect redundant type conversions.

Programming Languages
U

unimport

:warning: — A linter, formatter for finding and removing unused import statements.

Programming Languages
U

unparam

— Find unused function parameters.

Programming Languages
V

varcheck

— Find unused global variables and constants.

Programming Languages
V

vera++

:warning: — Vera++ is a programmable tool for verification, analysis and transformation of C++ source code.

Programming Languages
V

vera++

:warning: — Vera++ is a programmable tool for verification, analysis and transformation of C++ source code.

Programming Languages
V

verible-linter-action

— Automatic SystemVerilog linting in github actions with the help of Verible Used to lint Verilog and SystemVerilog source files and comment erroneous lines of code in Pull Requests automatically.

Programming Languages
V

VeriFast

— A tool for modular formal verification of correctness properties of single-threaded and multithreaded C and Java programs annotated with preconditions and postconditions written in separation logic. To express rich specifications, the programmer can define inductive datatypes, primitive recursive pure functions over these datatypes, and abstract separation logic predicates.

Programming Languages
V

Verilator

— A tool which converts Verilog to a cycle-accurate behavioral model in C++ or SystemC. Performs lint code-quality checks.

Programming Languages
V

vint

:warning: — Fast and Highly Extensible Vim script Language Lint implemented by Python.

Programming Languages
V

Violations Lib

— Java library for parsing report files from static code analysis. Used by a bunch of Jenkins, Maven and Gradle plugins.

Programming Languages
V

Visual Expert

:copyright: — Code analysis for PowerBuilder, Oracle, and SQL Server Explores, analyzes, and documents Code

Programming Languages
V

vscode-verilog-hdl-support

— Verilog HDL/SystemVerilog/Bluespec SystemVerilog support for VS Code. Provides syntax highlighting and Linting support from Icarus Verilog, Vivado Logical Simulation, Modelsim and Verilator

Programming Languages
V

VSDiagnostics

:warning: — A collection of static analyzers based on Roslyn that integrates with VS.

Programming Languages
V

vulture

— Find unused classes, functions and variables in Python code.

Programming Languages
W

WAP

— Tool to detect and correct input validation vulnerabilities in PHP (4.0 or higher) web applications and predicts false positives by combining static analysis and data mining.

Programming Languages
W

warnalyzer

— Show unused code from multi-crate Rust projects

Programming Languages
W

WartRemover

— A flexible Scala code linting tool.

Programming Languages
W

wasm-language-tools

— WebAssembly Language Tools aims to provide and improve the editing experience of WebAssembly Text Format. It also provides an out-of-the-box formatter (a.k.a. pretty printer) for WebAssembly Text Format.

Programming Languages
W

Weeder

— A tool for detecting dead exports or package imports in Haskell code.

Programming Languages
W

wemake-python-styleguide

— The strictest and most opinionated python linter ever.

Programming Languages
W

wily

:warning: — A command-line tool for archiving, exploring and graphing the complexity of Python source code.

Programming Languages
W

Wintellect.Analyzers

— .NET Compiler Platform ("Roslyn") diagnostic analyzers and code fixes.

Programming Languages
W

wsl

— Enforces empty lines at the right places.

Programming Languages
X

xenon

— Monitor code complexity using `radon`.

Programming Languages
X

xo

— Opinionated but configurable ESLint wrapper with lots of goodies included. Enforces strict and readable code.

Programming Languages
Y

yapf

— A formatter for Python files created by Google

Programming Languages
Y

yardstick

:warning: — Javascript code metrics.

Programming Languages
Z

zarn

— A lightweight static security analysis tool for modern Perl Apps

Programming Languages
Z

zod

— TypeScript-first schema validation with static type inference. The goal is to eliminate duplicative type declarations. With Zod, you declare a validator once and Zod will automatically infer the static TypeScript type. It is easy to compose simpler types into complex data structures.

Programming Languages
Z

ZPA

— An open source parser and code analyzer for PL/SQL and Oracle SQL code.

Programming Languages