Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
static-analysis — Répertoire organisé d'outils d'analyse statique (SAST) et de linters pour langages de programmation, configurations, outils de build et CI, axé sur l'amélioration de la qualité du code. | Kitploit
Outils/GitHubGitHub/analysis-tools-dev/static-analysis
Analyse StatiqueAnalyse Statique de Code (SAST)Analyse des VulnérabilitésAnalyse de CodeDevSecOpsArticles et RechercheApprentissage et ÉducationRessources OrganiséesTop en Ressources Organisées n°13
Top en Apprentissage et Éducation n°14
Top en Articles et Recherche n°18
GitHubanalysis-tools-dev/static-analysis

static-analysis

Répertoire organisé d'outils d'analyse statique (SAST) et de linters pour langages de programmation, configurations, outils de build et CI, axé sur l'amélioration de la qualité du code.

Voir le dépôtSite web
14.8k1.5k42il y a 3 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site Web Analysis Tools

Ce dépôt répertorie les outils d'analyse statique pour tous les langages de programmation, les outils de construction, les fichiers de configuration et plus encore. L'accent est mis sur les outils qui améliorent la qualité du code, tels que les linters et les formateurs. Le site web officiel, analysis-tools.dev, est basé sur ce dépôt et ajoute des classements, des commentaires d'utilisateurs et des ressources supplémentaires comme des vidéos pour chaque outil.

Website CI Links

Sponsors

Ce projet ne serait pas possible sans le soutien généreux de nos sponsors.

Pixee CodeRabbit Semgrep Offensive360

Si vous souhaitez également soutenir ce projet, rendez-vous sur notre page GitHub Sponsors.

Signification des symboles

  • ©️ désigne un logiciel propriétaire. Tous les autres outils sont open source.
  • ℹ️ indique que la communauté ne recommande pas l'outil pour les nouveaux projets. L'icône renvoie à la discussion concernée.
  • ⚠️ signifie que l'outil n'a pas été mis à jour depuis plus d'un an, ou que son dépôt a été archivé.

Les pull requests sont les bienvenues !

Consultez également le projet frère, awesome-dynamic-analysis.

Table des matières

Langages de programmation

ABAPErlangPL/SQL
AdaF#Perl
AssemblyFortranPython
AwkGoR
CGroovyRego
C#HaskellRuby
C++HaxeRust
ClojureJavaSQL
CoffeeScriptJavaScriptScala
ColdFusionJuliaShell
CrystalKotlinSwift
DartLuaTcl
DelphiMATLABTypeScript
DlangNimVerilog/SystemVerilog
ElixirOcamlVim Script
ElmPHPWebAssembly

Plusieurs langages

Autre

Afficher Autre
.envEmbedded Ruby (a.k.a. ERB, eRuby)Protocol Buffers
Code généré par IAGherkinPuppet
AnsibleHTMLRails
ArchiveJSONSécurité/SAST
Azure Resource ManagerKubernetesSmart Contracts
BinairesLaTeXSupport
Outils de constructionLaravelLangages de templates
CSS/SASS/SCSSMakefilesTerraform
Fichiers de configurationMarkdownTraduction
Gestion de configurationMetalinterUtilise un LLM/modèle
ConteneursMobileVue.js
Intégration continueNixÉcriture
DenoNode.jsXML
DockerfilePaquetsYAML
EmbarquéPrometheusgit

Langages de programmation

ABAP

  • abaplint — Linter pour ABAP, écrit en TypeScript.

  • abapOpenChecks — Améliore le SAP Code Inspector avec de nouveaux contrôles personnalisables.

Ada

  • Polyspace for Ada ©️ — Fournit une vérification de code qui prouve l'absence de dépassement, de division par zéro, d'accès hors limites à un tableau et de certaines autres erreurs d'exécution dans le code source.

  • SPARK ©️ — Ensemble d'outils d'analyse statique et de vérification formelle pour Ada.

Assembly

  • STOKE ⚠️ — Un optimiseur stochastique indépendant du langage de programmation pour le jeu d'instructions x86_64. Il utilise une recherche aléatoire pour explorer l'espace extrêmement multidimensionnel de toutes les transformations possibles de programmes.

Awk

  • gawk --lint — Avertit sur les constructions douteuses ou non portables vers d'autres implémentations d'awk.

C

  • Astrée ©️ — Astrée prouve automatiquement l'absence d'erreurs d'exécution et de comportements concurrents invalides dans les applications C/C++. Il est fiable pour les calculs en virgule flottante, très rapide et exceptionnellement précis. L'analyseur vérifie également les règles de codage MISRA/CERT/CWE/Adaptive Autosar et prend en charge la qualification pour ISO 26262, DO-178C niveau A et d'autres normes de sécurité. Des plugins Jenkins et Eclipse sont disponibles.

  • CBMC — Vérificateur de modèles borné pour les programmes C, assertions définies par l'utilisateur, assertions standard, plusieurs analyses de métriques de couverture.

  • clang-tidy — Outil linter C++ basé sur Clang avec la capacité (limitée) de corriger également les problèmes.

  • clazy — Analyseur de code statique orienté Qt basé sur le framework Clang. clazy est un plugin de compilateur qui permet à clang de comprendre la sémantique de Qt. Vous obtenez plus de 50 avertissements de compilateur liés à Qt, allant des allocations mémoire inutiles à la mauvaise utilisation de l'API, y compris des correctifs pour le refactoring automatique.

  • CMetrics ⚠️ — Mesure la taille et la complexité des fichiers C.

  • codechecker — Une base de données de défauts et une extension de visualisation pour le Clang Static Analyzer avec interface web.

  • CPAchecker — Un outil de vérification logicielle configurable pour les programmes C. Le nom CPAchecker a été choisi pour refléter que l'outil est basé sur les concepts CPA et est utilisé pour vérifier les programmes logiciels.

  • cppcheck — Analyse statique du code C/C++.

  • CppDepend ©️ — Mesurez, interrogez et visualisez votre code et évitez les problèmes inattendus, la dette technique et la complexité.

  • cpplint — Vérificateur C++ automatisé qui suit le guide de style de Google.

  • cqmetrics ⚠️ — Métriques de qualité pour le code C.

  • CScout — Métriques de complexité et de qualité pour le code C et le préprocesseur C.

  • ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) est un outil d'extraction des dépendances ou relations entre entités de code à partir du code source. ENRE-cpp est un extracteur de relations d'entités pour C/C++ basé sur @eclipse/CDT. (En cours de développement)

  • ESBMC — ESBMC est un vérificateur de modèles borné par contexte, open source, sous licence permissive, basé sur les théories de satisfiabilité modulo pour la vérification de programmes C/C++ mono- et multi-threadés.

  • flawfinder — Détecte les faiblesses de sécurité possibles.

  • flint++ ⚠️ — Portage multiplateforme, sans dépendance, de flint, un programme de lint pour C++ développé et utilisé chez Facebook.

  • Frama-C — Un analyseur statique fiable et extensible pour le code C.

  • GCC — Le compilateur GCC dispose de capacités d'analyse statique depuis la version 10. Cette option n'est disponible que si GCC a été configuré avec le support de l'analyseur activé. Il peut également sortir ses diagnostics dans un fichier JSON au format SARIF (depuis la v13).

  • Goblint — Un analyseur statique pour l'analyse de programmes C multi-threadés. Son objectif principal est la détection des courses de données, mais il signale également d'autres erreurs d'exécution, telles que les dépassements de tampon et les déréférencements de pointeur nul.

  • Helix QAC ©️ — Analyse statique de niveau entreprise pour les logiciels embarqués. Prend en charge les normes de codage MISRA, CERT et AUTOSAR.

  • IKOS ⚠️ — Un analyseur statique fiable pour le code C/C++ basé sur LLVM.

  • KLEE — Un moteur d'exécution symbolique dynamique construit sur l'infrastructure du compilateur LLVM. Il peut générer automatiquement des cas de test pour les programmes afin que ceux-ci exercent autant que possible le programme.

  • LDRA ©️ — Une suite d'outils comprenant l'analyse statique (TBVISION) selon diverses normes, notamment MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ et des règles personnalisées.

  • MATE ⚠️ — Une suite d'outils pour l'analyse interactive de programmes, axée sur la recherche de bogues dans le code C et C++. MATE unifie l'analyse de vulnérabilités spécifiques à l'application et de bas niveau à l'aide de graphes de propriétés de code (CPG), permettant la découverte de vulnérabilités hautement spécifiques à l'application qui dépendent à la fois des détails d'implémentation et de la sémantique de haut niveau des programmes C/C++ cibles.

  • PC-lint ©️ — Analyse statique pour C/C++. Fonctionne nativement sous Windows/Linux/MacOS. Analyse le code pour pratiquement toute plateforme, prenant en charge C11/C18 et C++17.

  • Phasar — Un framework d'analyse statique basé sur LLVM qui inclut une analyse de flux de données sensible aux types et de taint.

  • Polyspace Bug Finder ©️ — Identifie les erreurs d'exécution, les problèmes de concurrence, les vulnérabilités de sécurité et d'autres défauts dans les logiciels embarqués C et C++.

  • Polyspace Code Prover ©️ — Fournit une vérification de code qui prouve l'absence de dépassement, de division par zéro, d'accès hors limites à un tableau et de certaines autres erreurs d'exécution dans le code source C et C++.

  • scan-build — Interface pour piloter le Clang Static Analyzer intégré à Clang via une compilation régulière.

  • splint — Vérificateur de programme statique assisté par annotations.

  • SVF — Un outil statique qui permet une analyse de dépendances interprocédurale évolutive et précise pour les programmes C et C++.

  • TrustInSoft Analyzer ©️ — Détection exhaustive des erreurs de codage et de leurs vulnérabilités de sécurité associées. Cela englobe une détection fiable des comportements indéfinis (dépassements de tampon, accès hors limites à un tableau, déréférencements de pointeur nul, utilisation après libération, divisions par zéro, accès mémoire non initialisés, dépassements signés, arithmétique de pointeurs invalide, etc.), la vérification du flux de données et du flux de contrôle ainsi que la vérification fonctionnelle complète des spécifications formelles. Toutes les versions de C jusqu'à C18 et de C++ jusqu'à C++20 sont prises en charge. TrustInSoft Analyzer obtiendra la qualification ISO 26262 au T2 2023 (TCL3). Un vérificateur MISRA C est également inclus.

  • vera++ ⚠️ — Vera++ est un outil programmable pour la vérification, l'analyse et la transformation du code source C++.

  • weggli ⚠️ — Un outil de recherche sémantique rapide et robuste pour les bases de code C et C++. Il est conçu pour aider les chercheurs en sécurité à identifier des fonctionnalités intéressantes dans de grandes bases de code.

C#

  • .NET Analyzers — Une organisation pour le développement d'analyseurs (diagnostics et corrections de code) utilisant la plateforme de compilateur .NET.

  • ArchUnitNET — Une bibliothèque de tests d'architecture C# pour spécifier et vérifier des règles d'architecture en C# pour les tests automatisés.

  • code-cracker ⚠️ — Une bibliothèque d'analyseurs pour C# et VB qui utilise Roslyn pour produire des refactorisations, des analyses de code et d'autres améliorations.

  • CSharpEssentials ⚠️ — C# Essentials est une collection d'analyseurs de diagnostics Roslyn, de corrections de code et de refactorisations qui facilitent le travail avec les fonctionnalités du langage C# 6.

  • Designite ©️ — Designite prend en charge la détection de divers défauts d'architecture, de conception et d'implémentation, le calcul de diverses métriques de qualité de code et l'analyse des tendances.

  • Gendarme ⚠️ — Gendarme inspecte les programmes et bibliothèques contenant du code au format ECMA CIL (Mono et .NET).

  • Infer# ⚠️ — InferSharp (également appelé Infer#) est un analyseur de code statique interprocédural et évolutif pour C#. Grâce aux capacités de Facebook's Infer, cet outil détecte les déréférencements de pointeur nul et les fuites de ressources.

  • Meziantou.Analyzer — Un analyseur Roslyn pour appliquer certaines bonnes pratiques en C# en termes de conception, d'utilisation, de sécurité, de performance et de style.

  • NDepend ©️ — Mesurez, interrogez et visualisez votre code et évitez les problèmes inattendus, la dette technique et la complexité.

  • Puma Scan — Puma Scan fournit une analyse de code sécurisée en temps réel pour les vulnérabilités courantes (XSS, SQLi, CSRF, LDAPi, crypto, désérialisation, etc.) pendant que les équipes de développement écrivent du code dans Visual Studio.

  • Roslynator — Une collection de plus de 190 analyseurs et plus de 190 refactorisations pour C#, propulsée par Roslyn.

  • SonarAnalyzer.CSharp — Ces analyseurs Roslyn vous permettent de produire un code propre, sûr, fiable et maintenable en vous aidant à trouver et corriger les bogues, vulnérabilités et odeurs de code dans votre base de code.

  • VSDiagnostics ⚠️ — Une collection d'analyseurs statiques basés sur Roslyn qui s'intègre à VS.

  • Wintellect.Analyzers ⚠️ — Analyseurs de diagnostics et corrections de code de la plateforme de compilateur .NET ("Roslyn").

C++

  • Astrée ©️ — Astrée prouve automatiquement l'absence d'erreurs d'exécution et de comportements concurrents invalides dans les applications C/C++. Il est fiable pour les calculs en virgule flottante, très rapide et exceptionnellement précis. L'analyseur vérifie également les règles de codage MISRA/CERT/CWE/Adaptive Autosar et prend en charge la qualification pour ISO 26262, DO-178C niveau A et d'autres normes de sécurité. Des plugins Jenkins et Eclipse sont disponibles.

  • CBMC — Vérificateur de modèles borné pour les programmes C, assertions définies par l'utilisateur, assertions standard, plusieurs analyses de métriques de couverture.

  • clang-tidy — Outil linter C++ basé sur Clang avec la capacité (limitée) de corriger également les problèmes.

  • clazy — Analyseur de code statique orienté Qt basé sur le framework Clang. clazy est un plugin de compilateur qui permet à clang de comprendre la sémantique de Qt. Vous obtenez plus de 50 avertissements de compilateur liés à Qt, allant des allocations mémoire inutiles à la mauvaise utilisation de l'API, y compris des correctifs pour le refactoring automatique.

  • CMetrics ⚠️ — Mesure la taille et la complexité des fichiers C.

  • codechecker — Une base de données de défauts et une extension de visualisation pour le Clang Static Analyzer avec interface web.

  • cppcheck — Analyse statique du code C/C++.

  • CppDepend ©️ — Mesurez, interrogez et visualisez votre code et évitez les problèmes inattendus, la dette technique et la complexité.

  • cpplint — Vérificateur C++ automatisé qui suit le guide de style de Google.

  • cqmetrics ⚠️ — Métriques de qualité pour le code C.

  • CScout — Métriques de complexité et de qualité pour le code C et le préprocesseur C.

  • ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) est un outil d'extraction des dépendances ou relations entre entités de code à partir du code source. ENRE-cpp est un extracteur de relations d'entités pour C/C++ basé sur @eclipse/CDT. (En cours de développement)

  • ESBMC — ESBMC est un vérificateur de modèles borné par contexte, open source, sous licence permissive, basé sur les théories de satisfiabilité modulo pour la vérification de programmes C/C++ mono- et multi-threadés.

  • flawfinder — Détecte les faiblesses de sécurité possibles.

  • flint++ ⚠️ — Portage multiplateforme, sans dépendance, de flint, un programme de lint pour C++ développé et utilisé chez Facebook.

  • GCC — Le compilateur GCC dispose de capacités d'analyse statique depuis la version 10. Cette option n'est disponible que si GCC a été configuré avec le support de l'analyseur activé. Il peut également sortir ses diagnostics dans un fichier JSON au format SARIF (depuis la v13).

  • Helix QAC ©️ — Analyse statique de niveau entreprise pour les logiciels embarqués. Prend en charge les normes de codage MISRA, CERT et AUTOSAR.

  • IKOS ⚠️ — Un analyseur statique fiable pour le code C/C++ basé sur LLVM.

  • KLEE — Un moteur d'exécution symbolique dynamique construit sur l'infrastructure du compilateur LLVM. Il peut générer automatiquement des cas de test pour les programmes afin que ceux-ci exercent autant que possible le programme.

  • LDRA ©️ — Une suite d'outils comprenant l'analyse statique (TBVISION) selon diverses normes, notamment MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ et des règles personnalisées.

  • MATE ⚠️ — Une suite d'outils pour l'analyse interactive de programmes, axée sur la recherche de bogues dans le code C et C++. MATE unifie l'analyse de vulnérabilités spécifiques à l'application et de bas niveau à l'aide de graphes de propriétés de code (CPG), permettant la découverte de vulnérabilités hautement spécifiques à l'application qui dépendent à la fois des détails d'implémentation et de la sémantique de haut niveau des programmes C/C++ cibles.

  • PC-lint ©️ — Analyse statique pour C/C++. Fonctionne nativement sous Windows/Linux/MacOS. Analyse le code pour pratiquement toute plateforme, prenant en charge C11/C18 et C++17.

  • Phasar — Un framework d'analyse statique basé sur LLVM qui inclut une analyse de flux de données sensible aux types et de taint.- Polyspace Bug Finder ©️ — Identifie les erreurs d'exécution, les problèmes de concurrence, les vulnérabilités de sécurité et d'autres défauts dans les logiciels embarqués en C et C++.

  • Polyspace Code Prover ©️ — Fournit une vérification de code qui prouve l'absence de débordement, de division par zéro, d'accès hors limites aux tableaux et de certaines autres erreurs d'exécution dans le code source C et C++.

  • scan-build — Interface frontale pour piloter l'analyseur statique Clang intégré à Clang via une compilation classique.

  • splint — Vérificateur statique de programmes assisté par annotations.

  • SVF — Un outil statique qui permet une analyse interprocédurale des dépendances évolutive et précise pour les programmes C et C++.

  • TrustInSoft Analyzer ©️ — Détection exhaustive des erreurs de codage et de leurs vulnérabilités de sécurité associées. Cela englobe une détection fiable des comportements indéfinis (débordements de tampon, accès hors limites aux tableaux, déréférencements de pointeurs nuls, utilisation après libération, divisions par zéro, accès mémoire non initialisés, débordements signés, arithmétique de pointeurs invalide, etc.), la vérification des flux de données et de contrôle ainsi que la vérification fonctionnelle complète des spécifications formelles. Toutes les versions de C jusqu'à C18 et de C++ jusqu'à C++20 sont prises en charge. TrustInSoft Analyzer obtiendra la qualification ISO 26262 au T2'2023 (TCL3). Un vérificateur MISRA C est également inclus.

  • vera++ ⚠️ — Vera++ est un outil programmable pour la vérification, l'analyse et la transformation du code source C++.

  • weggli ⚠️ — Un outil de recherche sémantique rapide et robuste pour les bases de code C et C++. Il est conçu pour aider les chercheurs en sécurité à identifier des fonctionnalités intéressantes dans de grandes bases de code.

Clojure

  • clj-kondo — Un linter pour le code Clojure qui apporte de la joie. Il vous informe des erreurs potentielles pendant que vous tapez.

CoffeeScript

  • coffeelint ⚠️ — Un vérificateur de style qui aide à garder le code CoffeeScript propre et cohérent.

ColdFusion

  • Fixinator ©️ — Analyse statique de sécurité du code pour le code ColdFusion ou CFML. Conçu pour fonctionner dans un pipeline CI ou depuis le terminal des développeurs.

Crystal

  • ameba — Un outil d'analyse statique de code pour Crystal.

  • crystal — Le compilateur Crystal dispose de fonctionnalités de linting intégrées.

Dart

  • Dart Code Metrics ⚠️ — Linter supplémentaire pour Dart. Signale les métriques de code, vérifie les anti-modèles et fournit des règles supplémentaires pour l'analyseur Dart.

  • effective_dart ⚠️ — Règles de lint correspondant aux directives de Effective Dart

  • lint ⚠️ — Un ensemble de règles de lint communautaire et subjectif pour les projets Dart et Flutter. Comme pedantic mais plus strict

  • Linter for dart ⚠️ — Linter de style pour Dart.

Delphi

  • DelphiLint — Un package IDE Delphi fournissant une analyse de code et un linting en temps réel, propulsé par SonarDelphi.

  • Fix Insight ©️ — Un plugin IDE gratuit pour l'analyse statique de code. Une édition Pro inclut un outil en ligne de commande à des fins d'automatisation.

  • Pascal Analyzer ©️ — Un outil d'analyse statique de code avec de nombreux rapports. Une version gratuite Lite est disponible avec des rapports limités.

  • Pascal Expert ©️ — Plugin IDE pour l'analyse de code. Inclut un sous-ensemble des capacités de rapport de Pascal Analyzer et est disponible pour les versions Delphi 2007 et ultérieures.

  • SonarDelphi — Analyseur statique Delphi pour la plateforme de qualité de code SonarQube.

Dlang

  • D-scanner — D-Scanner est un outil pour analyser le code source D.

Elixir

  • credo — Un outil d'analyse statique de code axé sur la cohérence du code et l'apprentissage.

  • dialyxir — Tâches Mix pour simplifier l'utilisation de Dialyzer dans les projets Elixir.

  • sobelow ⚠️ — Analyse statique axée sur la sécurité pour le framework Phoenix.

Elm

  • elm-analyse ⚠️ — Un outil qui vous permet d'analyser votre code Elm, d'identifier les lacunes et d'appliquer les bonnes pratiques.

  • elm-review — Analyse des projets Elm entiers, en mettant l'accent sur des règles partageables et personnalisées écrites en Elm qui ajoutent des garanties que le compilateur Elm ne vous donne pas.

Erlang

  • dialyzer — Le DIALYZER, un anaLYZeur de DIscrepances pour les programmes ERlang. Dialyzer est un outil d'analyse statique qui identifie les divergences logicielles, telles que des erreurs de type définitives, du code devenu mort ou inaccessible en raison d'une erreur de programmation, et des tests inutiles, dans des modules Erlang individuels ou des ensembles (complets) d'applications. Dialyzer démarre son analyse soit à partir de bytecode BEAM compilé en mode débogage, soit à partir du code source Erlang. Le fichier et le numéro de ligne d'une divergence sont signalés avec une indication de ce que concerne la divergence. Dialyzer fonde son analyse sur le concept de typages de succès, ce qui permet des avertissements fiables (aucun faux positif).

  • elvis — Relecteur de style Erlang.

  • Primitive Erlang Security Tool (PEST) ⚠️ — Un outil pour effectuer une analyse de base du code source Erlang et signaler tout appel de fonction susceptible de rendre le code source Erlang non sécurisé.

F#

  • fantomas — Formateur de code source F#.

  • FSharpLint — Outil de lint pour F#.

  • ionide-analyzers — Une collection d'analyseurs F#, construite avec le SDK FSharp.Analyzers.

Fortran

  • Fortitude — Linter Fortran, inspiré par (et construit sur) Ruff, et basé sur les bonnes pratiques de la communauté. Prend en charge la dernière norme Fortran (2023).

  • fprettify — Auto-formateur pour le code source fortran moderne, écrit en Python. Fprettify est un outil qui fournit une mise en forme cohérente des espaces, de l'indentation et de l'alignement des délimiteurs dans le code, y compris la possibilité de modifier la casse des lettres et de gérer les directives de préprocesseur, tout en préservant l'historique des révisions et en étant testé pour l'intégration dans les éditeurs.

  • i-Code CNES for Fortran ⚠️ — Un outil open source d'analyse statique de code pour Fortran 77, Fortran 90 et Shell.

Go

  • aligncheck — Trouve les structures mal optimisées en termes de compactage.

  • bodyclose — Vérifie si le corps de la réponse HTTP est fermé.

  • deadcode ⚠️ — Trouve le code inutilisé.

  • dingo-hunter ⚠️ — Analyseur statique pour trouver les interblocages en Go.

  • dogsled ⚠️ — Trouve les affectations/déclarations avec trop d'identifiants vides.

  • dupl — Signale le code potentiellement dupliqué.

  • errcheck — Vérifie que les valeurs de retour d'erreur sont utilisées.

  • errwrap ⚠️ — Enveloppe et corrige les erreurs Go avec la nouvelle directive de verbe %w. Cet outil analyse les appels fmt.Errorf() et signale les appels contenant une directive de verbe différente de la nouvelle directive de verbe %w introduite dans Go v1.13. Il est également capable de réécrire les appels pour utiliser la nouvelle directive de verbe d'enveloppement %w.

  • flen — Obtient des informations sur la longueur des fonctions dans un package Go.

  • Go Meta Linter ⚠️ — Exécute simultanément les outils de lint Go et normalise leur sortie. Utilisez golangci-lint pour les nouveaux projets.

  • go tool vet --shadow — Signale les variables qui ont pu être masquées involontairement.

  • go vet — Examine le code source Go et signale les éléments suspects.

  • go-consistent ⚠️ — Analyseur qui vous aide à rendre vos programmes Go plus cohérents.

  • go-critic — Linter de code source Go qui maintient des vérifications actuellement non implémentées dans d'autres linters.

  • go/ast — Le package ast déclare les types utilisés pour représenter les arbres de syntaxe des packages Go.

  • goast — Outil d'analyse statique basé sur l'AST (arbre de syntaxe abstraite) Go avec Rego.

  • gochecknoglobals ⚠️ — Vérifie qu'aucune variable globale n'est présente.

  • goconst — Trouve les chaînes répétées qui pourraient être remplacées par une constante.

  • gocyclo — Calcule les complexités cyclomatiques des fonctions dans le code source Go.

  • gofmt -s — Vérifie si le code est correctement formaté et ne peut pas être davantage simplifié.

  • gofumpt — Applique un format plus strict que gofmt, tout en restant rétrocompatible. Autrement dit, gofumpt accepte un sous-ensemble des formats que gofmt accepte. L'outil est un fork de gofmt à partir de Go 1.19 et nécessite Go 1.18 ou ultérieur. Il peut être utilisé comme remplacement direct pour formater votre code Go, et l'exécution de gofmt après gofumpt ne devrait produire aucun changement. gofumpt n'ajoutera jamais de règles qui contredisent le formatage de gofmt. Nous étendons donc gofmt plutôt que de rivaliser avec lui.

  • goimports — Vérifie les imports de packages manquants ou non référencés.

  • gokart ⚠️ — Analyse de sécurité Golang axée sur la minimisation des faux positifs. Il est capable de tracer la source des variables et des arguments de fonction pour déterminer si les sources d'entrée sont sûres.

  • GolangCI-Lint — Exécuteur de linters rapide pour Go. Il agrège plusieurs linters Go et fournit une configuration, une mise en cache et un format de sortie unifiés. Alternative à Go Meta Linter.

  • golint ⚠️ — Affiche les erreurs de style de codage dans le code source Go.

  • goreporter ⚠️ — Exécute simultanément de nombreux linters et normalise leur sortie en un rapport.

  • goroutine-inspect ⚠️ — Un outil interactif pour analyser les dumps de goroutines Golang.

  • gosec (gas) — Inspecte le code source pour détecter les problèmes de sécurité en analysant l'AST Go.

  • gotype — Analyse syntaxique et sémantique similaire au compilateur Go.

  • govulncheck — Govulncheck signale les vulnérabilités connues qui affectent le code Go. Il utilise l'analyse statique du code source ou de la table des symboles d'un binaire pour réduire les rapports à ceux qui pourraient affecter l'application. Par défaut, govulncheck envoie des requêtes à la base de données de vulnérabilités Go à l'adresse https://vuln.go.dev. Les requêtes à la base de données de vulnérabilités ne contiennent que des chemins de modules, pas de code ni d'autres propriétés de votre programme.

  • ineffassign ⚠️ — Détecte les affectations inefficaces dans le code Go.

  • interfacer ⚠️ — Suggère des interfaces plus étroites qui peuvent être utilisées.

  • lll ⚠️ — Signale les lignes longues.

  • maligned ⚠️ — Détecte les structures qui prendraient moins de mémoire si leurs champs étaient triés.

  • misspell ⚠️ — Trouve les mots anglais couramment mal orthographiés.

  • nakedret ⚠️ — Trouve les retours nus.

  • nargs ⚠️ — Trouve les arguments inutilisés dans les déclarations de fonctions.

  • OSV-Scanner — Scanner de vulnérabilités écrit en Go qui utilise les données fournies par OSV.dev. Développé par Google pour analyser les dépendances dans plusieurs langages et gestionnaires de packages à la recherche de vulnérabilités connues. Prend en charge l'analyse de conteneurs, l'analyse de licences et la remédiation guidée. Fonctionne avec les fichiers de verrouillage, les SBOM et les images de conteneurs pour identifier les problèmes de sécurité.

  • prealloc — Trouve les déclarations de tranches qui pourraient potentiellement être préallouées.

  • Reviewdog — Un outil pour publier des commentaires de révision depuis n'importe quel linter dans n'importe quel service d'hébergement de code.

  • revive — Linter rapide, configurable, extensible, flexible et élégant pour Go. Remplacement direct de golint.

  • safesql ⚠️ — Outil d'analyse statique pour Golang qui protège contre les injections SQL.

  • shisho ⚠️ — Un analyseur de code statique léger conçu pour les développeurs et les équipes de sécurité. Il vous permet d'analyser et de transformer le code source avec un DSL intuitif similaire à sed, mais pour le code.

  • staticcheck — Analyse statique Go spécialisée dans la recherche de bogues, la simplification du code et l'amélioration des performances.

  • structcheck — Trouve les champs de structure inutilisés.

  • structslop ⚠️ — Analyseur statique pour Go qui recommande des réorganisations de champs de structure pour une efficacité maximale en termes d'espace/allocation.

  • test — Affiche l'emplacement des échecs de test du module de test stdlib.

  • unconvert — Détecte les conversions de type redondantes.

  • unparam — Trouve les paramètres de fonction inutilisés.

  • varcheck — Trouve les variables globales et constantes inutilisées.

  • wsl — Applique des lignes vides aux bons endroits.

Groovy

  • CodeNarc — Un outil d'analyse statique pour le code source Groovy, permettant le suivi et l'application de nombreuses normes de codage et bonnes pratiques.

Haskell

  • brittany ⚠️ — Formateur de code source Haskell

  • HLint — HLint est un outil pour suggérer des améliorations possibles au code Haskell.

  • Liquid Haskell — Liquid Haskell est un vérificateur de types par raffinement pour les programmes Haskell.

  • Stan — Stan est un outil en ligne de commande pour analyser les projets Haskell et afficher les vulnérabilités découvertes de manière utile avec des solutions possibles pour les problèmes détectés.

  • Weeder — Un outil pour détecter les exports morts ou les imports de packages dans le code Haskell.

Haxe

  • Haxe Checkstyle — Un outil d'analyse statique pour aider les développeurs à écrire du code Haxe conforme à une norme de codage.

Java

  • Checker Framework — Vérification de types enfichable pour Java. Ce n'est pas seulement un chercheur de bogues, mais un outil de vérification qui garantit l'exactitude. Il est fourni avec 27 systèmes de types préconstruits et permet aux utilisateurs de définir leur propre système de types ; le manuel répertorie plus de 30 systèmes de types contribués par les utilisateurs.

  • checkstyle — Vérifie que le code source Java respecte une norme de code ou un ensemble de règles de validation (bonnes pratiques).

  • ck — Calcule les métriques orientées objet de Chidamber et Kemerer en traitant les fichiers source Java.

  • ckjm ⚠️ — Calcule les métriques orientées objet de Chidamber et Kemerer en traitant le bytecode des fichiers Java compilés.

  • CogniCrypt ⚠️ — Vérifie le code source et le bytecode Java pour détecter les utilisations incorrectes des API cryptographiques.

  • Dataflow Framework — Un framework de flux de données de niveau industriel pour Java. Le Dataflow Framework est utilisé dans le Checker Framework, Error Prone de Google, NullAway d'Uber, Nullsafe de Meta et dans d'autres contextes. Il est distribué avec le Checker Framework.

  • DesigniteJava ©️ — DesigniteJava prend en charge la détection de diverses odeurs d'architecture, de conception et d'implémentation ainsi que le calcul de diverses métriques de qualité de code.

  • Diffblue ©️ — Diffblue est une société de logiciels qui fournit des solutions d'analyse de code et de test propulsées par l'IA pour les équipes de développement logiciel. Sa technologie aide les développeurs à automatiser les tests, à trouver des bogues et à réduire le travail manuel dans leurs processus de développement logiciel. Le produit principal de l'entreprise, Diffblue Cover, utilise l'IA pour générer et exécuter des tests unitaires pour le code Java, contribuant ainsi à détecter les erreurs et à améliorer la qualité du code.

  • Doop — Doop est un framework déclaratif pour l'analyse statique de programmes Java/Android, centré sur les algorithmes d'analyse de pointeurs. Doop fournit une grande variété d'analyses ainsi que l'infrastructure environnante pour exécuter une analyse de bout en bout (génération de faits, traitement, statistiques, etc.).

  • ENRE-java ⚠️ — ENRE (ENtity Relationship Extractor) est un outil pour l'extraction des dépendances ou relations d'entités de code à partir du code source. ENRE-java est un extracteur de relations d'entités pour les projets Java basé sur @Eclipse JDT/parser.

  • Error Prone — Capture les erreurs Java courantes comme erreurs de compilation.

  • fb-contrib — Un plugin pour FindBugs avec des détecteurs de bogues supplémentaires.

  • forbidden-apis — Détecte et interdit les invocations de méthodes/classes/champs spécifiques (comme la lecture d'un flux de texte sans jeu de caractères). Compatible Maven/Gradle/Ant.

  • google-java-format — Reformate le code source Java pour se conformer au Google Java Style

  • HuntBugs ⚠️ — Outil d'analyse statique de bytecode basé sur Procyon Compiler Tools visant à remplacer FindBugs.

  • IntelliJ IDEA ©️ — Livré avec de nombreuses inspections pour Java et Kotlin et inclut des outils de refactorisation, de formatage et plus encore.

  • JArchitect ©️ — Mesurez, interrogez et visualisez votre code et évitez les problèmes inattendus, la dette technique et la complexité.

  • JBMC — Vérificateur de modèles borné pour Java (bytecode), vérifie les assertions définies par l'utilisateur, les assertions standard et plusieurs analyses de métriques de couverture.

  • JLiSA — Un analyseur statique basé sur l'interprétation abstraite pour Java construit sur le framework LiSA.

  • Mariana Trench — Notre outil d'analyse statique axé sur la sécurité pour les applications Android et Java. Mariana Trench analyse le bytecode Dalvik et est conçu pour s'exécuter rapidement sur de grandes bases de code (des dizaines de millions de lignes de code). Il peut trouver des vulnérabilités au fur et à mesure des modifications de code, avant même qu'elles n'arrivent dans votre dépôt.

  • NullAway — Vérificateur de pointeurs nuls basé sur les types avec un faible surcoût de temps de compilation ; un plugin Error Prone.

  • OWASP Dependency Check ⚠️ — Vérifie les dépendances pour détecter les vulnérabilités connues et publiquement divulguées.

  • qulice — Combine plusieurs outils d'analyse statique (préconfigurés) (checkstyle, PMD, Findbugs, ...).

  • RefactorFirst — Identifie et priorise les classes God et les classes fortement couplées dans les bases de code Java que vous devriez refactoriser en premier.

  • Soot — Un framework pour analyser et transformer les applications Java et Android.- Spoon — Spoon est une bibliothèque de métaprogrammation pour analyser et transformer du code source Java (y compris Java 9, 10, 11, 12, 13, 14). Elle analyse les fichiers sources pour construire un AST bien conçu avec une API puissante d'analyse et de transformation. Peut être intégrée dans Maven et Gradle.

  • SpotBugs — SpotBugs est le successeur de FindBugs. Un outil d'analyse statique pour rechercher des bogues dans le code Java.

  • steady ⚠️ — Analyse vos applications Java pour détecter les dépendances open-source présentant des vulnérabilités connues, en utilisant à la fois l'analyse statique et les tests pour déterminer le contexte et l'utilisation du code afin d'obtenir une plus grande précision.

  • Violations Lib — Bibliothèque Java pour analyser les fichiers de rapport issus de l'analyse statique de code. Utilisée par de nombreux plugins Jenkins, Maven et Gradle.

JavaScript

  • aether ⚠️ — Lint, analyse, normalise, transforme, sandboxe, exécute, parcourt et visualise du JavaScript utilisateur, dans node ou le navigateur.

  • Closure Compiler — Un outil de compilation pour accroître l'efficacité, réduire la taille et fournir des avertissements de code dans les fichiers JavaScript.

  • ClosureLinter ⚠️ — Garantit que tout le code JavaScript de votre projet respecte les directives du Google JavaScript Style Guide. Il peut également corriger automatiquement de nombreuses erreurs courantes.

  • complexity-report ⚠️ — Analyse de la complexité logicielle pour les projets JavaScript.

  • DeepScan ©️ — Un analyseur pour JavaScript qui cible les erreurs d'exécution et les problèmes de qualité plutôt que les conventions de codage.

  • es6-plato ⚠️ — Visualise la complexité du code source JavaScript (ES6).

  • escomplex ⚠️ — Analyse de la complexité logicielle des arbres de syntaxe abstraite de la famille JavaScript.

  • Esprima ⚠️ — Infrastructure d'analyse ECMAScript pour une analyse polyvalente.

  • flow — Un vérificateur de types statique pour JavaScript.

  • hegel ⚠️ — Un vérificateur de types statique pour JavaScript axé sur l'inférence de types et les systèmes de types forts.

  • jshint ℹ️ ⚠️ — Détecte les erreurs et les problèmes potentiels dans le code JavaScript et applique les conventions de codage de votre équipe.

  • JSLint ℹ️ — L'outil de qualité du code JavaScript.

  • JSPrime ⚠️ — Outil d'analyse de sécurité statique.

  • NodeJSScan ⚠️ — Un scanner de sécurité de code statique pour les applications Node.js propulsé par libsast et semgrep, qui s'appuie sur l'outil CLI njsscan. Il propose une interface utilisateur avec divers tableaux de bord sur l'état de sécurité d'une application.

  • plato ⚠️ — Visualise la complexité du code source JavaScript.

  • Polymer-analyzer — Un framework d'analyse statique pour les Web Components.

  • retire.js — Scanner détectant l'utilisation de bibliothèques JavaScript présentant des vulnérabilités connues.

  • RSLint ⚠️ — Un linter JavaScript (en cours de développement) écrit en Rust, conçu pour être aussi rapide que possible, personnalisable et facile à utiliser.

  • squirrelscan — squirrelscan est un outil d'assurance qualité de sites web conçu pour les agents de codage tels que Claude Code et Cursor. Son CLI squirrel parcourt un site en direct et exécute plus de 260 règles d'audit couvrant le SEO, les performances, la sécurité, l'accessibilité, les données structurées et l'expérience agent, puis renvoie des correctifs exacts mappés à la source. S'exécute depuis le terminal, le CI, le cloud ou via MCP.

  • standard ⚠️ — Un module npm qui vérifie les problèmes de style JavaScript.

  • tern — Un analyseur de code JavaScript pour un support linguistique profond et multi-éditeurs.

  • TypL ⚠️ — Avec TypL, vous écrivez simplement du JavaScript entièrement standard, et l'outil détermine vos types grâce à une inférence puissante.

  • xo — Un wrapper ESLint configurable mais opinionated, avec de nombreuses fonctionnalités incluses. Applique un code strict et lisible.

  • yardstick ⚠️ — Métriques de code JavaScript.

Julia

  • JET — Système d'inférence de types statique pour détecter les bogues et les instabilités de types.

  • StaticLint — Analyse statique de code pour Julia

Kotlin

  • detekt — Analyse statique de code pour le code Kotlin.

  • diktat ⚠️ — Norme de codage stricte pour Kotlin et un linter qui détecte et corrige automatiquement les odeurs de code.

  • ktfmt — Un programme qui reformate le code source Kotlin pour se conformer à la norme communautaire courante des conventions de code Kotlin. Un plugin IntelliJ ktfmt est disponible depuis le référentiel de plugins. Pour l'installer, accédez aux paramètres de votre IDE et sélectionnez la catégorie Plugins. Cliquez sur l'onglet Marketplace, recherchez le plugin ktfmt, puis cliquez sur le bouton Installer.

  • ktlint — Un linter Kotlin anti-bikeshedding avec un formateur intégré.

Lua

  • luacheck — Un outil de linting et d'analyse statique du code Lua.

  • lualint ⚠️ — lualint effectue une analyse statique basée sur luac de l'utilisation des variables globales dans le code source Lua.

  • Luanalysis ⚠️ — Un IDE pour le développement Lua typé statiquement.

MATLAB

  • MISS_HIT ⚠️ — MISS_HIT est une suite d'outils de qualité de code open-source et gratuite pour MATLAB, Simulink et Octave. Elle comprend MH Style (vérificateur de style et formateur), MH Metrics (métriques de complexité), MH Lint (analyse statique), MH Trace (traçabilité des exigences) et MH Copyright (gestion des droits d'auteur). Conçue pour fonctionner de manière autonome sans nécessiter l'installation de MATLAB/Octave.

  • mlint ©️ — Vérifie les fichiers de code MATLAB pour détecter d'éventuels problèmes.

Nim

  • DrNim — DrNim combine le frontend Nim avec le moteur de preuve Z3 afin de permettre la vérification/validation de logiciels écrits en Nim.

  • nimfmt ⚠️ — Formateur de code / linter / vérificateur de style Nim

Ocaml

  • Sys ⚠️ — Un outil statique/symbolique pour trouver des bogues dans le code (navigateur). Il utilise l'AST LLVM pour trouver des bogues tels que l'accès à une mémoire non initialisée.

  • VeriFast — Un outil de vérification formelle modulaire des propriétés de correction de programmes C et Java mono-threadés et multi-threadés annotés avec des préconditions et postconditions écrites en logique de séparation. Pour exprimer des spécifications riches, le programmeur peut définir des types de données inductifs, des fonctions pures récursives primitives sur ces types, et des prédicats abstraits de logique de séparation.

PHP

  • CakeFuzzer ⚠️ — Outil de test de sécurité d'applications web pour les applications web basées sur CakePHP. CakeFuzzer emploie un ensemble prédéfini d'attaques qui sont modifiées aléatoirement avant l'exécution. Tirant parti de sa compréhension approfondie du framework Cake PHP, Cake Fuzzer lance des attaques sur tous les points d'entrée potentiels de l'application.

  • churn-php — Aide à découvrir de bons candidats pour le refactoring.

  • composer-dependency-analyser — Détection rapide des problèmes de dépendances composer.

  • 💪 Puissant : Détecte les dépendances composer inutilisées, masquées et mal placées
  • ⚡ Performant : Analyse 15 000 fichiers en 2s !
  • ⚙️ Configurable : Ignorances fines via la configuration PHP
  • 🕸️ Léger : Aucune dépendance composer
  • 🍰 Facile à utiliser : Aucune configuration requise pour un premier essai
  • ✨ Compatible : PHP >= 7.2
  • dephpend — Outil d'analyse de dépendances.

  • deprecation-detector ⚠️ — Trouve les utilisations de code (Symfony) obsolète.

  • deptrac — Applique des règles pour les dépendances entre les couches logicielles.

  • DesignPatternDetector ⚠️ — Détection des patrons de conception dans le code PHP.

  • EasyCodingStandard — Combine PHP_CodeSniffer et PHP-CS-Fixer.

  • Enlightn ⚠️ — Un outil d'analyse statique et dynamique pour les applications Laravel qui fournit des recommandations pour améliorer les performances, la sécurité et la fiabilité du code des applications Laravel. Contient 120 vérifications automatisées.

  • exakat ⚠️ — Un moteur de revue de code automatisée pour PHP.

  • GrumPHP — Vérifie le code à chaque commit.

  • larastan — Ajoute une analyse statique à Laravel, améliorant la productivité des développeurs et la qualité du code. C'est un wrapper autour de PHPStan.

  • mago — Mago est une chaîne d'outils complète pour PHP, écrite en Rust, conçue dès le départ pour des performances maximales.

  • ✨ Un formateur ultra-rapide qui formate automatiquement votre code selon PER-CS, mettant fin aux débats de style pour toujours. - 🔎 Un linter intelligent qui détecte les problèmes stylistiques, les incohérences et les odeurs de code avant qu'ils ne deviennent des problèmes. - 🔬 Un analyseur statique puissant qui trouve les erreurs de type et les bogues logiques dans votre code sans que vous ayez à l'exécuter. - 🛡️ Un garde architectural robuste qui applique les règles de dépendances et les conventions structurelles.

  • Mondrian ⚠️ — Un ensemble d'outils d'analyse statique et de refactoring qui utilisent la théorie des graphes.

  • parallel-lint — Cet outil vérifie la syntaxe des fichiers PHP plus rapidement qu'une vérification séquentielle, avec une sortie plus élégante.

  • Parse ⚠️ — Un scanner de sécurité statique.

  • pdepend — Calcule des métriques logicielles telles que la complexité cyclomatique pour le code PHP.

  • phan — Un analyseur statique moderne d'etsy.

  • PHP Architecture Tester — Outil de test d'architecture facile à utiliser pour PHP.

  • PHP Assumptions ⚠️ — Vérifie les hypothèses faibles.

  • PHP Coding Standards Fixer — Corrige votre code selon des normes telles que PSR-1, PSR-2 et la norme Symfony.

  • PHP Insights — Vérifications instantanées de qualité PHP depuis votre console. Analyse de la qualité du code et du style de codage, ainsi qu'un aperçu de l'architecture du code et de sa complexité.

  • Php Inspections (EA Extended) — Un analyseur de code statique pour PHP.

  • PHP Refactoring Browser ⚠️ — Aide au refactoring.

  • PHP Semantic Versioning Checker — Suggère une version suivante selon le versionnage sémantique.

  • PHP-Parser — Un analyseur PHP écrit en PHP.

  • php-speller ⚠️ — Bibliothèque de vérification orthographique PHP.

  • PHP-Token-Reflection ⚠️ — Bibliothèque émulant la réflexion interne de PHP.

  • php7cc ⚠️ — Vérificateur de compatibilité PHP 7.

  • php7mar ⚠️ — Aide les développeurs à porter rapidement leur code vers PHP 7.

  • PHP_CodeSniffer ⚠️ — Détecte les violations d'un ensemble défini de normes de codage.

  • PHPArkitect — PHPArkitect vous aide à garder votre base de code PHP cohérente et solide, en permettant d'ajouter certaines vérifications de contraintes architecturales à votre flux de travail. Vous pouvez exprimer la contrainte que vous souhaitez appliquer, dans un code PHP simple et lisible.

  • phpca ⚠️ — Trouve l'utilisation d'extensions non intégrées.

  • phpcpd ⚠️ — Détecteur de copier/coller pour le code PHP.

  • phpdcd ⚠️ — Détecteur de code mort (DCD) pour le code PHP.

  • PhpDependencyAnalysis ⚠️ — Construit un graphe de dépendances pour un projet.

  • PhpDeprecationDetector ⚠️ — Analyseur de code PHP pour rechercher les problèmes liés aux fonctionnalités obsolètes dans les versions plus récentes de l'interpréteur. Il trouve les objets supprimés (fonctions, variables, constantes et directives ini), les fonctionnalités de fonctions obsolètes, et l'utilisation de noms ou astuces interdits (par exemple, les identifiants réservés dans les versions plus récentes).

  • phpdoc-to-typehint ⚠️ — Ajoute des indications de type scalaires et des types de retour aux projets PHP existants à l'aide des annotations PHPDoc.

  • phpDocumentor — Analyse le code source PHP pour générer de la documentation.

  • phploc ⚠️ — Un outil pour mesurer rapidement la taille et analyser la structure d'un projet PHP.

  • PHPMD — Trouve les bogues possibles dans votre code.

  • PhpMetrics — Calcule et visualise diverses métriques de qualité de code.

  • phpmnd — Aide à détecter les nombres magiques.

  • PHPQA — Un outil pour exécuter des outils d'assurance qualité (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).

  • phpqa - jakzal — De nombreux outils d'analyse statique PHP dans un seul conteneur.

  • phpqa - jmolivas ⚠️ — Outil CLI d'analyse PHPQA tout-en-un.

  • phpsa ⚠️ — Outil d'analyse statique pour PHP.

  • PHPStan — Outil d'analyse statique PHP — découvrez les bogues dans votre code sans l'exécuter !

  • Progpilot ⚠️ — Un outil d'analyse statique à des fins de sécurité.

  • Psalm — Outil d'analyse statique pour trouver les erreurs de type dans les applications PHP.

  • Qafoo Quality Analyzer ⚠️ — Visualise les métriques et le code source.

  • rector — Mises à niveau instantanées et refactoring automatisé de tout code PHP 5.3+. Il met à niveau votre code pour PHP 7.4, 8.0 et au-delà. Rector promet un faible taux de faux positifs car il recherche des motifs d'AST (arbre de syntaxe abstraite) étroitement définis. Le cas d'utilisation principal est de traiter la dette technique dans votre code hérité et de supprimer le code mort. Rector fournit un ensemble de règles spéciales pour Symfony, Doctrine, PHPUnit, et bien d'autres.

  • Reflection — Bibliothèque de réflexion pour effectuer une analyse statique pour les projets PHP

  • Symfony Insight ©️ — Détecte les risques de sécurité, trouve les bogues et fournit des métriques exploitables pour les projets PHP.

  • Tuli ⚠️ — Un moteur d'analyse statique.

  • twig-lint ⚠️ — twig-lint est un outil de lint pour vos fichiers twig.

  • WAP — Outil pour détecter et corriger les vulnérabilités de validation d'entrée dans les applications web PHP (4.0 ou supérieur) et prédire les faux positifs en combinant l'analyse statique et l'exploration de données.

PL/SQL

  • ZPA — Un analyseur et analyseur de code open-source pour le code PL/SQL et Oracle SQL.

Perl

  • Perl::Analyzer ⚠️ — Perl-Analyzer est un ensemble de programmes et de modules qui permettent aux utilisateurs d'analyser et de visualiser des bases de code Perl en fournissant des informations sur les espaces de noms et leurs relations, les dépendances, l'héritage, et les méthodes implémentées, héritées et redéfinies dans les packages, ainsi que les appels aux méthodes des packages parents via SUPER.

  • Perl::Critic — Critique le code source Perl pour les meilleures pratiques.

  • perltidy — Perltidy est un script Perl qui indente et reformate les scripts Perl pour les rendre plus faciles à lire. Le formatage peut être contrôlé avec des paramètres de ligne de commande. Les paramètres par défaut suivent approximativement les suggestions du Perl Style Guide. Outre le reformatage des scripts, Perltidy peut être d'une grande aide pour localiser les erreurs liées aux accolades, parenthèses et crochets manquants ou supplémentaires, car il est très efficace pour localiser les erreurs.

  • zarn — Un outil d'analyse de sécurité statique léger pour les applications Perl modernes

Python

  • autoflake — Autoflake supprime les imports et variables inutilisés du code Python.

  • autopep8 — Un outil qui formate automatiquement le code Python pour se conformer au guide de style PEP 8. Il utilise l'utilitaire pycodestyle pour déterminer les parties du code qui doivent être formatées.

  • bandit — Un outil pour trouver les problèmes de sécurité courants dans le code Python.

  • bellybutton ⚠️ — Un moteur de linting prenant en charge des règles personnalisées spécifiques au projet.

  • Black — Le formateur de code Python sans compromis.

  • Bowler ⚠️ — Refactoring de code sûr pour Python moderne. Bowler est un outil de refactoring pour manipuler Python au niveau de l'arbre de syntaxe. Il permet des modifications de code sûres et à grande échelle tout en garantissant que le code résultant compile et s'exécute. Il fournit à la fois une interface en ligne de commande simple et une API fluide en Python pour générer des modifications de code complexes dans le code.

  • ciocheck ⚠️ — Aide pour le linting, le formatage et les suites de tests. En tant que linter, c'est un wrapper autour de pep8, pydocstyle, flake8 et pylint.

  • cohesion ⚠️ — Un outil pour mesurer la cohésion des classes Python.

  • deal — Conception par contrat pour Python. Écrivez du code sans bogues. En ajoutant quelques décorateurs à votre code, vous obtenez gratuitement des tests, une analyse statique, une vérification formelle, et bien plus encore.

  • Dlint — Un outil pour garantir que le code Python est sécurisé.

  • Dodgy ⚠️ — Dodgy est un outil très basique à exécuter sur votre base de code pour rechercher des valeurs "douteuses". C'est une série d'expressions régulières simples conçues pour détecter des choses telles que des vérifications SCM accidentelles, ou des mots de passe ou clés secrètes codés en dur dans les fichiers.

  • ENRE-py ⚠️ — ENRE (ENtity Relationship Extractor) est un outil pour l'extraction des dépendances ou relations d'entités de code à partir du code source. ENRE-py est un extracteur de relations d'entités pour Python basé sur les services de langage Python de la bibliothèque standard.

  • fixit — Un framework pour créer des règles de lint et les auto-corrections correspondantes pour le code source.

  • flake8 — Un wrapper autour de pyflakes, pycodestyle et mccabe.

  • flakeheaven ⚠️ — flakeheaven est un linter Python construit autour de flake8 pour permettre une configuration toml héritable et complexe.

  • Griffe — Signatures pour des programmes Python entiers. Extrayez la structure, le cadre, le squelette de votre projet, pour générer une documentation API ou trouver des changements cassants dans votre API.

  • InspectorTiger ⚠️ — IT, Inspector Tiger, est un outil/framework moderne de revue de code Python. Il est fourni avec un ensemble de gestionnaires prédéfinis qui vous avertissent des améliorations et des bogues possibles. En plus de ces gestionnaires, vous pouvez écrire les vôtres ou utiliser ceux de la communauté.

  • jedi — Bibliothèque d'autocomplétion/analyse statique pour Python.

  • linty fresh ⚠️ — Analyse les erreurs de lint et les signale à Github sous forme de commentaires sur une pull request.

  • mbake — mbake est un formateur et linter de Makefile. Cela n'a pris que 50 ans !

  • mccabe — Vérifie la complexité de McCabe.

  • multilint ⚠️ — Un wrapper autour de flake8, isort et modernize.

  • mypy — Un vérificateur de types statique qui vise à combiner les avantages du duck typing et du typage statique, fréquemment utilisé avec MonkeyType.- pip-audit — Outil de scan des paquets Python pour détecter les vulnérabilités connues. Développé par la Python Packaging Authority (PyPA) et soutenu par Trail of Bits et Google. Analyse les environnements Python et les fichiers d'exigences pour identifier les paquets vulnérables et suggère des correctifs. Prend en charge GitHub Actions, les hooks pre-commit et plusieurs intégrations de services de vulnérabilités.

  • prospector — Un wrapper autour de pylint, pep8, mccabe et d'autres.

  • py-find-injection ⚠️ — Détecte les vulnérabilités d'injection SQL dans le code Python.

  • pyanalyze — Un outil pour détecter programmatiquement les erreurs courantes dans le code Python, telles que les références à des variables non définies et les erreurs de type. Il peut être étendu pour ajouter des règles supplémentaires et effectuer des vérifications spécifiques à certaines fonctions.

  • pycodestyle — (Anciennement pep8) Vérifie le code Python par rapport à certaines conventions de style de la PEP 8.

  • pydocstyle ⚠️ — Vérifie la conformité avec les conventions de docstring Python.

  • pyflakes ⚠️ — Vérifie les fichiers sources Python pour détecter les erreurs.

  • pylint — Recherche les erreurs de programmation, aide à appliquer une norme de codage et détecte certains code smells. Il inclut également pyreverse (un générateur de diagrammes UML) et symilar (un vérificateur de similitudes).

  • pylyzers ⚠️ — Un analyseur de code statique / serveur de langage pour Python, écrit en Rust, axé sur la vérification de types et une sortie lisible.

  • Pyra — Pyra est un analyseur statique de lint de haut niveau pour les applications de science des données écrites en Python, qui aide les développeurs à identifier les problèmes potentiels dans leur code de science des données écrit en Python, en tant qu'extension de Lyra.

  • pyre-check — Un vérificateur de types rapide et évolutif pour les grandes bases de code Python. Pyre-check a été remplacé par Pyrefly, son itération suivante.

  • pyrefly — Un vérificateur de types incrémental et rapide et un serveur de langage pour Python, offrant des fonctionnalités IDE comme la navigation dans le code, la coloration sémantique et la complétion de code.

  • pyright — Vérificateur de types statique pour Python, créé pour combler les lacunes des outils existants comme mypy.

  • pyroma — Évalue dans quelle mesure un projet Python respecte les bonnes pratiques de l'écosystème d'empaquetage Python et liste les problèmes qui pourraient être améliorés.

  • Pysa — Un outil basé sur pyre-check de Facebook pour identifier les problèmes de sécurité potentiels dans le code Python grâce à l'analyse de flux de données (taint analysis).

  • pyscn — Analyseur intelligent de qualité de code Python avec analyse de complexité cyclomatique basée sur CFG, détection de code mort, détection de clones (types 1 à 4) et métriques de couplage. Utilise tree-sitter pour l'analyse syntaxique. Écrit en Go.

  • PyT - Python Taint ⚠️ — Un outil d'analyse statique pour détecter les vulnérabilités de sécurité dans les applications web Python.

  • pytype — Un analyseur de types statique pour le code Python.

  • pyupgrade — Un outil (et un hook pre-commit) pour mettre à niveau automatiquement la syntaxe vers les versions plus récentes du langage.

  • QuantifiedCode ⚠️ — Revue de code automatisée et réparation. Il vous aide à suivre les problèmes et les métriques dans vos projets logiciels et peut être facilement étendu pour prendre en charge de nouveaux types d'analyses.

  • radon ⚠️ — Un outil Python qui calcule diverses métriques à partir du code source.

  • refurb — Un outil pour rénover et moderniser les bases de code Python. Refurb est fortement inspiré de clippy, le linter intégré de Rust.

  • ruff — Linter Python rapide, écrit en Rust. 10 à 100 fois plus rapide que les linters existants. Compatible avec Python 3.10. Prend en charge l'observateur de fichiers.

  • Safety — Scanner de vulnérabilités des dépendances Python conçu pour renforcer la sécurité de la chaîne d'approvisionnement logicielle en détectant les paquets présentant des vulnérabilités connues. Vérifie les dépendances Python par rapport à une base de données de vulnérabilités de sécurité connues et fournit des rapports détaillés. Prend en charge l'intégration CI/CD et plusieurs formats de sortie.

  • ty — Un vérificateur de types Python extrêmement rapide écrit en Rust.

  • unimport — Un linter et formateur pour trouver et supprimer les instructions d'import inutilisées.

  • vulture — Trouve les classes, fonctions et variables inutilisées dans le code Python.

  • wemake-python-styleguide — Le linter Python le plus strict et le plus dogmatique qui soit.

  • wily — Un outil en ligne de commande pour archiver, explorer et représenter graphiquement la complexité du code source Python.

  • xenon ⚠️ — Surveille la complexité du code à l'aide de radon.

  • yapf ⚠️ — Un formateur pour les fichiers Python créé par Google. YAPF suit une méthodologie distinctive, issue de l'outil « clang-format » créé par Daniel Jasper. Essentiellement, le programme reformate le code selon le format le plus adapté qui respecte le guide de style, même si le code original respecte déjà le guide de style. Ce concept est similaire à l'outil « gofmt » du langage de programmation Go, qui vise à mettre fin aux débats sur le formatage en faisant passer l'ensemble de la base de code d'un projet par YAPF à chaque modification, maintenant ainsi un style cohérent dans tout le projet et éliminant le besoin de débattre du style à chaque revue de code.

R

  • CodeDepends — Analyse statique de code pour R.

  • cyclocomp ⚠️ — Quantifie la complexité cyclomatique des fonctions / expressions R.

  • flowR — Un découpeur de programme et un analyseur de flux de données pour le langage de programmation R. Son découpeur vous permet de réduire un programme complexe aux seules parties liées à une tâche spécifique (par exemple, la génération d'un seul ou d'un ensemble de graphiques, un test de significativité, ...). L'analyse de flux de données vous offre une vue détaillée de la sémantique du code R, ce qui peut grandement améliorer d'autres analyses. Pour utiliser flowR, consultez l'extension Visual Studio Code, le module complémentaire RStudio, l'image Docker ou le paquet R.

  • goodpractice — Analyse le code source des paquets R et fournit des recommandations de bonnes pratiques.

  • lintr — Analyse statique de code pour R.

  • R Language Server — Fournit la complétion de code, le refactoring, le repliement, les diagnostics (avec lintr), et plus encore pour R.

  • rco ⚠️ — Optimiseur de performances pour le code R (avec interface graphique).

  • styler — Formatage des fichiers de code source R et impression élégante du code R.

Rego

  • Regal — Regal est un linter pour le langage de politiques Rego. Regal vise à détecter les bogues et les erreurs dans le code de politiques, tout en aidant les personnes à apprendre le langage, les bonnes pratiques et les constructions idiomatiques.

Ruby

  • Active Record Doctor — Identifie les problèmes de base de données avant qu'ils n'atteignent la production.

  • brakeman — Un scanner de vulnérabilités de sécurité par analyse statique pour les applications Ruby on Rails.

  • Bullet — Aide à éliminer les requêtes N+1 et le chargement hâtif inutilisé.

  • bundler-audit — Audite Gemfile.lock pour les gems présentant des vulnérabilités de sécurité signalées dans la Ruby Advisory Database.

  • cane ⚠️ — Vérification des seuils de qualité de code dans le cadre de votre build.

  • Churn ⚠️ — Un projet pour fournir le fichier, la classe et la méthode de churn pour un projet à un checkin donné. Au fil du temps, l'outil accumule l'historique des churns pour donner le nombre de fois où un fichier, une classe ou une méthode change pendant la vie d'un projet.

  • DatabaseConsistency — L'outil pour éviter divers problèmes dus aux incohérences et inefficacités entre un schéma de base de données et les modèles d'application.

  • dawnscanner ⚠️ — Un scanner de sécurité par analyse statique pour les applications web écrites en Ruby. Il prend en charge les frameworks Sinatra, Padrino et Ruby on Rails.

  • ERB Lint — Lint vos fichiers ERB ou HTML

  • ERB::Formatter ⚠️ — Formate les fichiers ERB avec rapidité et précision.

  • Fasterer ⚠️ — Vérificateur d'idiomes Ruby courants.

  • flay — Flay analyse le code pour détecter les similitudes structurelles.

  • flog — Flog signale le code le plus torturé dans un rapport de douleur facile à lire. Plus le score est élevé, plus le code est douloureux.

  • Fukuzatsu ⚠️ — Un outil pour mesurer la complexité du code dans les fichiers de classes Ruby. Son analyse génère des scores basés sur des algorithmes de complexité cyclomatique sans « opinions » ajoutées.

  • htmlbeautifier ⚠️ — Un normaliseur / embellisseur pour HTML qui comprend également le Ruby embarqué. Idéal pour nettoyer les modèles Rails.

  • laser ⚠️ — Analyse statique et linter de style pour le code Ruby.

  • MetricFu ⚠️ — MetricFu est un ensemble d'outils fournissant des rapports qui montrent quelles parties de votre code pourraient nécessiter un travail supplémentaire.

  • pelusa ⚠️ — Outil d'analyse statique de type Lint pour améliorer votre code Ruby orienté objet.

  • quality ⚠️ — Exécute des contrôles de qualité sur votre code à l'aide d'outils communautaires et s'assure que vos chiffres ne se dégradent pas au fil du temps.

  • Querly ⚠️ — Outil de vérification basé sur des motifs pour Ruby.

  • Railroader ⚠️ — Un scanner open source de vulnérabilités de sécurité par analyse statique pour les applications Ruby on Rails.

  • rails_best_practices — Un outil de métriques de code pour les projets Rails

  • reek — Détecteur de code smells pour Ruby.

  • Roodi ⚠️ — Roodi signifie Ruby Object Oriented Design Inferometer. Il analyse votre code Ruby et vous avertit des problèmes de conception basés sur les vérifications qu'il a configurées.

  • RuboCop — Un analyseur de code statique Ruby, basé sur le guide de style Ruby communautaire.

  • Rubrowser ⚠️ — Générateur de graphe de dépendances interactif des classes Ruby.

  • ruby-lint ⚠️ — Analyse statique de code pour Ruby.

  • rubycritic — Un rapporteur de qualité de code Ruby.

  • rufo — Un formateur Ruby dogmatique, destiné à être utilisé en ligne de commande comme plugin d'éditeur de texte, pour autoformater les fichiers à la sauvegarde ou à la demande.

  • Saikuro ⚠️ — Un analyseur de complexité cyclomatique Ruby.

  • SandiMeter ⚠️ — Outil d'analyse statique pour vérifier le code Ruby par rapport aux règles de Sandi Metz.

  • Skunk — Un calculateur de SkunkScore pour le code Ruby — Trouvez le code le plus complexe sans couverture de tests !

  • Sorbet — Un vérificateur de types rapide et puissant conçu pour Ruby.

  • Standard Ruby — Guide de style Ruby, avec linter et correcteur de code automatique

  • Steep — Typage graduel pour Ruby.

  • Traceroute ⚠️ — Une gem de tâche Rake qui vous aide à trouver les routes et actions de contrôleur inutilisées pour votre application Rails 3+.

Rust

  • C2Rust — C2Rust vous aide à migrer du code conforme à C99 vers Rust. Le traducteur (ou transpileur) produit du code Rust non sûr qui reflète étroitement le code C d'entrée.

  • cargo udeps — Trouve les dépendances inutilisées dans Cargo.toml. Il affiche soit une ligne « unused crates » listant les crates, soit une ligne indiquant qu'aucun crate n'était inutilisé.

  • cargo-audit — Audite Cargo.lock pour les crates présentant des vulnérabilités de sécurité signalées dans la RustSec Advisory Database.

  • cargo-bloat ⚠️ — Découvrez ce qui prend le plus de place dans votre exécutable. Prend en charge les binaires ELF (Linux, BSD), Mach-O (macOS) et PE (Windows).

  • cargo-breaking ⚠️ — cargo-breaking compare l'API publique d'un crate entre deux branches différentes, montre ce qui a changé et suggère la version suivante selon semver.

  • cargo-call-stack ⚠️ — Analyse statique de pile complète du programme. L'outil produit le graphe d'appels complet d'un programme sous forme de fichier dot.

  • cargo-deny — Un plugin cargo pour linter vos dépendances. Il peut être utilisé soit comme outil en ligne de commande, soit comme crate Rust, soit comme action GitHub pour l'IC. Il vérifie les informations de licence valides, les crates en double, les vulnérabilités de sécurité, et plus encore.

  • cargo-expand — Sous-commande cargo pour afficher le résultat de l'expansion des macros et de l'expansion #[derive] appliquées au crate actuel. C'est un wrapper autour d'une commande de compilateur plus verbeuse.

  • cargo-geiger — Un plugin cargo pour analyser l'utilisation du code Rust non sûr. Fournit une sortie statistique pour aider à l'audit de sécurité

  • cargo-inspect ⚠️ — Inspectez le code Rust sans sucre syntaxique pour voir ce que le compilateur fait dans les coulisses.

  • cargo-semver-checks — Analysez vos versions de crates Rust pour détecter les violations semver. Il peut être utilisé directement via la CLI, comme action GitHub dans l'IC, ou via des gestionnaires de versions comme release-plz. Il a trouvé des violations semver dans plus d'un crate sur six parmi les 1000 crates les plus téléchargés sur crates.io.

  • cargo-show-asm — Sous-commande cargo affichant l'assembly, LLVM-IR et MIR générés pour le code Rust

  • cargo-spellcheck — Vérifie toute votre documentation pour les fautes d'orthographe et de grammaire avec hunspell (prêt) et languagetool (aperçu)

  • cargo-unused-features ⚠️ — Trouvez les indicateurs de fonctionnalités activés potentiellement inutilisés et supprimez-les. Vous pouvez générer un simple rapport HTML à partir du json pour faciliter l'inspection des résultats. Il supprime une fonctionnalité d'une dépendance puis compile le projet pour voir s'il compile toujours. Si c'est le cas, l'indicateur de fonctionnalité peut éventuellement être supprimé, mais cela peut être un faux positif.

  • clippy — Un linter de code pour détecter les erreurs courantes et améliorer votre code Rust.

  • diff.rs — Application web (WASM) pour afficher un diff entre les versions de crates Rust.

  • dylint — Un outil pour exécuter des lints Rust à partir de bibliothèques dynamiques. Dylint facilite la maintenance par les développeurs de leurs propres collections de lints personnelles.

  • electrolysis ⚠️ — Un outil pour vérifier formellement les programmes Rust en les transpilant en définitions dans le prouveur de théorèmes Lean.

  • herbie ⚠️ — Ajoute des avertissements ou des erreurs à votre crate lors de l'utilisation d'une expression à virgule flottante numériquement instable.

  • kani — Le vérificateur Rust Kani est un vérificateur de modèles précis au bit près pour Rust. Kani est particulièrement utile pour vérifier les blocs de code non sûrs en Rust, où les « superpouvoirs non sûrs » ne sont pas vérifiés par le compilateur. Kani vérifie :

  • La sécurité mémoire (par exemple, les déréférencements de pointeurs nuls)
  • Les assertions spécifiées par l'utilisateur (c'est-à-dire assert!(...))
  • L'absence de paniques (par exemple, unwrap() sur des valeurs None)
  • L'absence de certains types de comportements inattendus (par exemple, les débordements arithmétiques)
  • linter-rust ⚠️ — Lint vos fichiers Rust dans Atom, en utilisant rustc et cargo.

  • lockbud — Détecte statiquement les bogues de blocage (deadlock) Rust. Il détecte actuellement deux types courants de bogues de blocage : le double verrouillage et les verrous dans un ordre conflictuel. Il affichera les bogues au format JSON avec l'emplacement du code source et une explication de chaque bogue.

  • MIRAI ⚠️ — Un interpréteur abstrait opérant sur le langage intermédiaire de niveau moyen de Rust, fournissant des avertissements basés sur l'analyse de flux de données (taint analysis).

  • prae ⚠️ — Fournit une macro pratique qui vous permet de générer des wrappers de types qui promettent de toujours respecter les invariants arbitraires que vous avez spécifiés.

  • Prusti ⚠️ — Un vérificateur statique pour Rust, basé sur l'infrastructure de vérification Viper. Par défaut, Prusti vérifie l'absence de paniques en prouvant que des instructions telles que unreachable!() et panic!() sont inaccessibles.

  • Rudra — Détection de sécurité mémoire et de comportement indéfini Rust. Il est capable d'analyser des paquets Rust individuels ainsi que tous les paquets sur crates.io.

  • Rust Language Server ⚠️ — Prend en charge des fonctionnalités telles que « aller à la définition », la recherche de symboles, le reformatage et la complétion de code, et permet le renommage et les refactorisations.

  • rust-analyzer — Prend en charge des fonctionnalités telles que « aller à la définition », l'inférence de types, la recherche de symboles, le reformatage et la complétion de code, et permet le renommage et les refactorisations.

  • rust-audit — Audite les binaires Rust pour détecter les bogues connus ou les vulnérabilités de sécurité. Cela fonctionne en intégrant des données sur l'arbre de dépendances (Cargo.lock) au format JSON dans une section de liaison dédiée de l'exécutable compilé.

  • rustfix ⚠️ — Lit et applique les suggestions faites par rustc (et les lints tiers, comme ceux offerts par clippy).

  • rustfmt — Un outil pour formater le code Rust selon les directives de style.

  • RustViz — RustViz est un outil qui génère des visualisations à partir de programmes Rust simples pour aider les utilisateurs à mieux comprendre le mécanisme de durée de vie et d'emprunt de Rust. Il génère des fichiers SVG avec des indicateurs graphiques qui s'intègrent à mdbook pour rendre des visualisations du flux de données dans les programmes Rust.

  • TangleGuard ©️ — Vous aide à comprendre et à maintenir une architecture logicielle évolutive. Pour ce faire, il génère un graphe de dépendances interactif et imbriqué à partir du code source. Vous pouvez choisir le niveau de détail et obtenir la partie de votre base de code qui vous importe.

  • warnalyzer ⚠️ — Affiche le code inutilisé des projets Rust multi-crates

SQL

  • Bytebase — Plateforme DevSecOps de bases de données avec un moteur de revue SQL intégré qui lint les migrations de schéma et les requêtes selon plus de 100 règles configurables — conventions de nommage, anti-modèles et contrôles de sécurité — sur MySQL, PostgreSQL, Oracle, SQL Server, Snowflake, et plus encore.

  • dbcritic — dbcritic trouve les problèmes dans un schéma de base de données, comme une contrainte de clé primaire manquante dans une table.

  • holistic — Plus de 1 300 règles pour analyser les requêtes SQL. Prend une définition de schéma SQL et le code source des requêtes pour générer des recommandations d'amélioration. Détecte les code smells, les index inutilisés, les tables inutilisées, les vues, les vues matérialisées, et plus encore.- pgspot — Détecte les vulnérabilités dans les scripts d'extension PostgreSQL. Repère les utilisations dangereuses de search_path et la création d'objets non sécurisée dans les scripts d'extension PostgreSQL ou tout autre code SQL PostgreSQL.

  • sleek ⚠️ — Sleek est un outil CLI pour formater le SQL. Il vous aide à maintenir un style cohérent dans votre code SQL, améliorant la lisibilité et la productivité. Le gros du travail est effectué par la crate sqlformat.

  • sqlcheck ⚠️ — Identifie automatiquement les anti-patterns dans les requêtes SQL.

  • SQLFluff — Linter et formateur SQL multi-dialectes.

  • sqlint — Linter SQL simple.

  • squawk — Linter pour PostgreSQL, axé sur les migrations. Prévient les temps d'arrêt inattendus causés par les migrations de base de données et encourage les bonnes pratiques concernant les schémas Postgres et le SQL.

  • tsqllint — Linter spécifique à T-SQL.

  • TSqlRules ⚠️ — Règles d'analyse statique de code TSQL pour SQL Server.

  • Visual Expert ©️ — Analyse de code pour PowerBuilder, Oracle et SQL Server. Explore, analyse et documente le code.

Scala

  • linter ⚠️ — Linter est un plugin compilateur d'analyse statique Scala qui ajoute des vérifications à la compilation pour divers bugs potentiels, inefficacités et problèmes de style.

  • Scalastyle ⚠️ — Scalastyle examine votre code Scala et indique les problèmes potentiels qu'il contient.

  • scapegoat — Plugin compilateur Scala pour l'analyse statique de code.

  • WartRemover — Un outil flexible de linting de code Scala.

Shell

  • bashate ⚠️ — Application du style de code pour les programmes bash. Le format de sortie vise à suivre le format de sortie par défaut de pycodestyle (pep8).

  • i-Code CNES for Shell ⚠️ — Un outil open source d'analyse statique de code pour Shell et Fortran (77 et 90).

  • kmdr ⚠️ — Outil CLI pour apprendre des commandes depuis votre terminal. kmdr fournit une décomposition des commandes avec chaque attribut expliqué.

  • sh — Un analyseur syntaxique, formateur et interpréteur shell avec prise en charge de bash ; inclut shfmt.

  • shellcheck — ShellCheck, un outil d'analyse statique qui fournit des avertissements et des suggestions pour les scripts shell bash/sh.

  • shellharden — Un surligneur de syntaxe et un outil pour semi-automatiser la réécriture de scripts conformément à ShellCheck, principalement axé sur les guillemets.

Swift

  • SwiftFormat — Une bibliothèque et un outil de formatage en ligne de commande pour reformater le code Swift.

  • SwiftLint — Un outil pour appliquer le style et les conventions Swift.

  • Tailor ⚠️ — Un outil d'analyse statique et de lint pour le code source écrit dans le langage de programmation Swift d'Apple.

Tcl

  • Frink — Un programme de formatage et de vérification statique Tcl (peut embellir le programme, le minimiser, l'obfusquer ou simplement le vérifier).

  • Nagelfar — Un vérificateur de syntaxe statique pour Tcl.

  • tclchecker — Un module d'analyse de syntaxe statique (dans le cadre de TDK).

TypeScript

  • Angular ESLint — Linter pour les projets Angular.

  • Codelyzer ⚠️ — Un ensemble de règles tslint pour l'analyse statique de code des projets Angular 2 TypeScript.

  • ENRE-ts ⚠️ — ENRE (ENtity Relationship Extractor) est un outil pour l'extraction des dépendances ou relations d'entités de code à partir du code source. ENRE-ts est un extracteur de relations d'entités pour ECMAScript et TypeScript basé sur @babel/parser.

  • fta — Analyse statique basée sur Rust pour les projets TypeScript.

  • stc ⚠️ — Vérificateur de types TypeScript rapide écrit en Rust.

  • tslint ⚠️ — TSLint a été déprécié depuis 2019. Veuillez consulter ce problème pour plus de détails. typescript-eslint est désormais votre meilleure option pour le linting TypeScript. TSLint est un outil d'analyse statique extensible qui vérifie le code TypeScript pour les erreurs de lisibilité, de maintenabilité et de fonctionnalité. Il est largement pris en charge par les éditeurs et systèmes de build modernes et peut être personnalisé avec vos propres règles de lint, configurations et formatteurs.

  • tslint-clean-code ⚠️ — Un ensemble de règles TSLint inspirées du manuel Clean Code.

  • tslint-microsoft-contrib ⚠️ — Un ensemble de règles tslint pour l'analyse statique de code des projets TypeScript maintenu par Microsoft.

  • TypeScript Call Graph — CLI pour générer un graphe interactif des fonctions et appels à partir de vos fichiers TypeScript.

  • TypeScript ESLint — Extension du langage TypeScript pour eslint.

  • zod — Validation de schéma TypeScript-first avec inférence de type statique. L'objectif est d'éliminer les déclarations de type dupliquées. Avec Zod, vous déclarez un validateur une fois et Zod infère automatiquement le type TypeScript statique. Il est facile de composer des types plus simples en structures de données complexes.

Verilog/SystemVerilog

  • Icarus Verilog ⚠️ — Un outil de simulation et de synthèse Verilog qui fonctionne en compilant le code source écrit en Verilog IEEE-1364 vers un format cible.

  • svls — Une implémentation du Language Server Protocol pour Verilog et SystemVerilog, incluant des capacités de lint.

  • verible-linter-action ⚠️ — Linting SystemVerilog automatique dans les actions GitHub avec l'aide de Verible. Utilisé pour linter les fichiers sources Verilog et SystemVerilog et commenter les lignes de code erronées dans les Pull Requests automatiquement.

  • Verilator — Un outil qui convertit Verilog en un modèle comportemental précis au cycle près en C++ ou SystemC. Effectue des vérifications de qualité de code de type lint.

  • vscode-verilog-hdl-support — Prise en charge de Verilog HDL/SystemVerilog/Bluespec SystemVerilog pour VS Code. Fournit la coloration syntaxique et la prise en charge du linting depuis Icarus Verilog, Vivado Logical Simulation, Modelsim et Verilator.

Vim Script

  • vint ⚠️ — Lint rapide et hautement extensible du langage de script Vim implémenté en Python.

WebAssembly

  • Twiggy — Analyse le graphe d'appels d'un binaire pour profiler la taille du code. L'objectif est de réduire la taille des binaires wasm.

  • wasm-language-tools — WebAssembly Language Tools vise à fournir et améliorer l'expérience d'édition du format texte WebAssembly. Il fournit également un formateur prêt à l'emploi (également appelé pretty printer) pour le format texte WebAssembly.

Plusieurs langages

  • ale — Moteur de lint asynchrone pour Vim et NeoVim avec prise en charge de nombreux langages.

  • Android Studio — Basé sur IntelliJ IDEA, et fourni avec des outils pour Android, y compris Android Lint.

  • AppChecker ©️ — Analyse statique pour C/C++/C#, PHP et Java.

  • Application Inspector ©️ — Analyse statique de code commerciale qui génère des exploits pour vérifier les vulnérabilités.

  • ApplicationInspector — Crée des rapports de plus de 400 modèles de règles pour la détection de fonctionnalités (par exemple l'utilisation de la cryptographie ou du contrôle de version dans les applications).

  • ArchUnit — Testez unitairement votre architecture Java ou Kotlin.

  • AST Metrics — Analyseur de maintenabilité multi-langages. Calcule la complexité cyclomatique et cognitive, le volume de Halstead, le couplage afférent/efférent et l'indice de maintenabilité, détecte les communautés dans le graphe de dépendances, et génère un rapport HTML explorable ainsi qu'une sortie JSON, Markdown, SARIF et OpenMetrics. Binaire unique rapide sans dépendance d'exécution, et un serveur MCP intégré pour que les agents IA puissent interroger la structure du codebase avant un refactoring.

  • ast-grep — ast-grep est un outil puissant conçu pour gérer le code à grande échelle en utilisant les arbres de syntaxe abstraite (AST). Considérez-le comme un hybride de grep, eslint et codemod, avec la capacité de rechercher, linter et réécrire le code en fonction de sa structure plutôt que du texte brut. Il prend en charge plusieurs langages et est conçu pour être extensible, vous permettant d'enregistrer des langages personnalisés.

  • Atom-Beautify ⚠️ — Embellit HTML, CSS, JavaScript, PHP, Python, Ruby, Java, C, C++, C#, Objective-C, CoffeeScript, TypeScript, Coldfusion, SQL, et plus encore dans l'éditeur Atom.

  • autocorrect — Un linter et formateur pour vous aider à améliorer la rédaction, corriger les espaces, mots et ponctuations entre CJK (chinois, japonais, coréen).

  • Axivion Bauhaus Suite ©️ — Repère les emplacements de code sujets aux erreurs, les violations de style, le code cloné ou mort, les dépendances cycliques et plus encore pour C/C++, C#/.NET, Java et Ada 83/Ada 95.

  • Bearer — Outil open source d'analyse statique de code pour découvrir, filtrer et prioriser les risques et vulnérabilités de sécurité conduisant à des expositions de données sensibles (PII, PHI, PD). Hautement configurable et facilement extensible, conçu pour les équipes de sécurité et d'ingénierie.

  • Better Code Hub ©️ — Better Code Hub vérifie votre codebase GitHub par rapport à 10 directives d'ingénierie établies par l'autorité en qualité logicielle, Software Improvement Group.

  • Betterscan CE ⚠️ — Vérifie votre code et votre infrastructure (divers dépôts Git pris en charge, stacks cloud, CLI, plateforme d'interface Web, intégrations disponibles) pour les problèmes de sécurité et de qualité. Analyse de code/SAST/Linting utilisant de nombreux outils/scanners dédupliqués avec un seul rapport (IA en option).

  • biome — Une chaîne d'outils pour les projets web, visant à fournir des fonctionnalités pour les maintenir. Biome formate et linte le code en une fraction de seconde. C'est le successeur de Rome. Il est conçu pour éventuellement remplacer Babel, ESLint, webpack, Prettier, Jest, et d'autres.

  • BlockWatch — Un linter indépendant du langage qui maintient le code, la documentation et la configuration synchronisés et applique des règles strictes de formatage et de validation.

  • BugProve ⚠️ ©️ — BugProve est une plateforme d'analyse de firmware combinant des techniques d'analyse statique et dynamique pour découvrir les corruptions mémoire, les injections de commandes et d'autres classes ou faiblesses courantes dans le code binaire. Il détecte également les dépendances vulnérables, les paramètres cryptographiques faibles, les mauvaises configurations, et plus encore.

  • callGraph ⚠️ — Génère statiquement une image de graphe d'appels et l'affiche à l'écran.

  • CAST Highlight ©️ — Analyse statique de code commerciale qui s'exécute localement, mais télécharge les résultats vers son cloud pour la présentation.

  • Checkmarx CxSAST ©️ — Analyse statique de code commerciale qui ne nécessite pas de pré-compilation.

  • ClassGraph — Un scanner de classpath et de chemin de modules pour interroger ou visualiser les métadonnées de classes ou les relations entre classes.

  • Clayton ©️ — Revues de code propulsées par l'IA pour Salesforce. Sécurisez vos développements, appliquez les bonnes pratiques et contrôlez votre dette technique en temps réel.

  • coala ⚠️ — Framework indépendant du langage pour créer des analyses de code — prend en charge plus de 60 langages par défaut.

  • Cobra ©️ — Analyseur structurel de code source du Jet Propulsion Laboratory de la NASA.

  • Codacy ©️ — Analyse de code pour livrer un meilleur code, plus rapidement.

  • Code Intelligence ©️ — Plateforme DevSecOps indépendante du CI/CD qui combine des moteurs de fuzzing de pointe pour trouver des bugs et visualiser la couverture de code.

  • Code Pathfinder — Analyse statique de code open source pour les équipes de sécurité avec analyse de flux de données inter-fichiers et de taint. Conçu pour trouver des vulnérabilités, effectuer des recherches structurelles avancées, en tirer des informations et prend en charge un serveur MCP.

  • Code-Graph-RAG — Construit des graphes de connaissances à partir de codebases multi-langages en utilisant l'analyse AST Tree-sitter et les stocke dans Memgraph. Prend en charge 11 langages de programmation avec un schéma de graphe unifié et permet l'interrogation et l'édition en langage naturel de la structure et des relations du code. Fonctionne comme un serveur MCP pour l'intégration d'assistants IA.

  • Codeac ©️ — Outil automatisé de revue de code intégré à GitHub, Bitbucket et GitLab (même auto-hébergé). Disponible pour JavaScript, TypeScript, Python, Ruby, Go, PHP, Java, Docker, et plus encore. (gratuit en open source)

  • codeburner — Fournit une interface unifiée pour trier et agir sur les problèmes qu'il trouve.

  • CodeFactor ©️ — Analyse de code automatisée pour les dépôts sur GitHub ou BitBucket.

  • CodeFlow ©️ — Outil automatisé d'analyse de code pour traiter la profondeur technique. S'intègre à Bitbucket et Gitlab. (gratuit pour les projets open source)

  • Codemodder ⚠️ — Codemodder est un framework enfichable pour construire des codemods expressifs. Utilisez Codemodder lorsque vous avez besoin de plus qu'un linter ou un outil de formatage de code. Utilisez-le pour corriger des problèmes de sécurité non triviaux et d'autres problèmes de qualité de code.

  • codeql — Analyse de code approfondie — requêtes sémantiques et flux de données pour plusieurs langages avec prise en charge du plugin VSCode.

  • CodeQue — Écosystème pour la correspondance structurelle du code JavaScript et TypeScript. Offre un outil de recherche qui comprend la structure du code. Disponible en tant qu'outil CLI et extension Visual Studio Code. Il aide à rechercher le code plus rapidement et plus précisément, rendant votre flux de travail plus efficace. Bientôt, il offrira un plugin ESLint pour créer vos propres règles en quelques minutes afin d'aider à garantir la qualité du codebase.

  • CodeRush ©️ — Outils de création, débogage, navigation, refactoring, analyse et visualisation de code qui utilisent le moteur Roslyn dans Visual Studio 2015 et versions ultérieures.

  • CodeScan ©️ — Qualité et sécurité du code pour les développeurs Salesforce. Conçue exclusivement pour la plateforme Salesforce, les solutions d'analyse de code de CodeScan vous offrent une visibilité totale sur la santé de votre code.

  • CodeScene ©️ — CodeScene est un outil de visualisation de la qualité pour les logiciels. Priorisez la dette technique, détectez les risques de livraison et mesurez les aspects organisationnels. Entièrement automatisé.

  • CodeSee ©️ — CodeSee cartographie et automatise les services, répertoires, dépendances de fichiers et modifications de code de votre application. C'est comme Google Map, mais pour le code.

  • CodeSonar from GrammaTech ©️ — Analyse statique avancée, sur tout le programme, de chemins profonds, de C, C++, Java et C# avec des explications faciles à comprendre et une visualisation du code et des chemins.

  • Codety ⚠️ ©️ — Codety Scanner est un scanner complet de code source qui intègre plus de 5000 règles d'analyse statique de code, visant à détecter les problèmes de code pour plus de 20 langages de programmation et outils IaC.

  • Codiga ©️ — Plateforme automatisée de revues de code et de gestion de la dette technique prenant en charge plus de 12 langages.

  • Corgea ©️ — Corgea est un scanner SAST propulsé par l'IA qui aide les développeurs à trouver et corriger le code non sécurisé. Il détecte les défauts de logique métier, l'authentification cassée, les vulnérabilités API, et plus encore avec peu de faux positifs. De plus, il écrit automatiquement des correctifs de sécurité à approuver. Corgea s'intègre à GitHub, GitLab, Azure DevOps, aux IDE et à la CLI. Il est gratuit à essayer.

  • Corrode ⚠️ — Traduction semi-automatique de C vers Rust. Peut révéler des bugs dans l'implémentation d'origine en affichant les avertissements et erreurs du compilateur Rust. Remplacé par C2Rust.

  • Coverity ©️ — Synopsys Coverity prend en charge 20 langages et plus de 70 frameworks, y compris Ruby on Rails, Scala, PHP, Python, JavaScript, TypeScript, Java, Fortran, C, C++, C#, VB.NET.

  • cpp-linter-action — Une action GitHub pour linter le code C/C++ intégrant clang-tidy et clang-format pour recueillir des retours fournis sous forme de commentaires de fil et/ou d'annotations.

  • cqc ⚠️ — Vérifie la qualité de votre code pour les fichiers js, jsx, vue, css, less, scss, sass et styl.

  • DeepCode ⚠️ ©️ — DeepCode a été acquis par Snyk et est désormais Snyk Code.

  • DeepSource ©️ — Analyse statique approfondie pour trouver des problèmes dans les catégories de risques de bugs, sécurité, anti-patterns, performances, documentation et style. Intégrations natives avec GitHub, GitLab et Bitbucket. Moins de 5 % de faux positifs.

  • deleaker ©️ — Deleaker est un outil de détection de fuites mémoire pour C++, .NET et Delphi, s'intégrant à Visual Studio, Qt Creator et RAD Studio ou fonctionnant comme une application autonome. Il aide les développeurs à trouver et corriger efficacement les fuites mémoire, GDI et de handles.

  • Depends — Analyse les dépendances complètes des éléments de code pour Java, C/C++, Ruby.

  • DerScanner ©️ — Plateforme multi-langages de test de sécurité des applications statiques (SAST) qui détecte les vulnérabilités critiques, y compris les secrets codés en dur, la cryptographie faible, les portes dérobées, les injections SQL, les configurations non sécurisées, etc.

  • DevSkim — Outil d'analyse statique basé sur les expressions régulières pour Visual Studio, VS Code et Sublime Text — C/C++, C#, PHP, ASP, Python, Ruby, Java, et autres.

  • diesel-guard — Linter pour les modèles de migration Postgres dangereux dans Diesel et SQLx. Prévient les temps d'arrêt causés par des modifications de schéma non sécurisées.

  • dotnet-format — Un formateur de code pour .NET. Les préférences seront lues à partir d'un fichier .editorconfig, s'il existe, sinon un ensemble de préférences par défaut sera utilisé. Actuellement, dotnet-format est capable de formater les projets C# et Visual Basic avec un sous-ensemble d'options .editorconfig prises en charge.

  • Embold ©️ — Plateforme intelligente d'analyse logicielle qui identifie les problèmes de conception, les problèmes de code, les duplications et les métriques. Prend en charge Java, C, C++, C#, JavaScript, TypeScript, Python, Go, Kotlin et plus encore.

  • emerge — Emerge est un visualiseur de code source et de dépendances qui peut être utilisé pour recueillir des informations sur la structure du code source, les métriques, les dépendances et la complexité des projets logiciels. Après avoir analysé le code source d'un projet, il vous fournit une interface web interactive pour explorer et analyser votre projet en utilisant des structures de graphes.

  • Enforster AI ©️ — Enforster AI effectue une SAST de sécurité contextuelle du code, exploitant les LLM et l'intelligence artificielle pour réduire et enrichir la détection des défauts de logique, secrets, fuites de données, chaîne d'approvisionnement et vulnérabilités techniques.- ESLint — Un linter extensible pour JS, conforme à la norme ECMAScript.

  • ezno — Un compilateur JavaScript et vérificateur TypeScript écrit en Rust, axé sur l'analyse statique et les performances d'exécution. Le vérificateur de types d'Ezno est construit de zéro. Il est entièrement compatible avec les annotations de type TypeScript et peut fonctionner sans aucune annotation de type.

  • Fallow — Analyse statique native Rust pour JavaScript et TypeScript. Cartographie un dépôt comme un graphe de dépendances unique pour trouver du code inutilisé et des problèmes structurels au-delà des frontières de fichiers. S'exécute depuis la CLI ou GitHub Actions, avec des intégrations VS Code, LSP, MCP et API Node.

  • Find Security Bugs — Le plugin SpotBugs pour les audits de sécurité des applications web Java et des applications Android. (Fonctionne également avec les projets Kotlin, Groovy et Scala)

  • Fortify ©️ — Une plateforme commerciale d'analyse statique qui prend en charge l'analyse de 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 et XML.

  • Freeplane Code Explorer — Le mode Code Explorer dans Freeplane est conçu pour analyser la structure et les dépendances du code compilé en fichiers de classes JVM. Il permet également d'afficher les résultats des tests ArchUnit directement dans Freeplane, si Freeplane est en cours d'exécution et qu'ArchUnit détecte des violations de règles pendant les tests.

  • Goodcheck — Linter personnalisable basé sur des expressions régulières.

  • goone ⚠️ — Détecte les requêtes N+1 (appels SQL dans une boucle for) dans le code Go.

  • graudit — Grep rough audit - outil d'audit de code source.

  • HCL AppScan Source ©️ — Analyse statique de code commerciale.

  • Hopper ⚠️ — Un outil d'analyse statique écrit en Scala pour les langages qui s'exécutent sur la JVM.

  • Hound CI — Commente les violations de style dans les pull requests GitHub. Prend en charge Coffeescript, Go, HAML, JavaScript, Ruby, SCSS et Swift.

  • imhotep ⚠️ — Commente les commits arrivant dans votre dépôt et vérifie les erreurs syntaxiques et les avertissements généraux de lint.

  • include-gardener ⚠️ — Un analyseur statique multilingue pour C/C++/Obj-C/Python/Ruby afin de créer un graphe (au format dot ou graphml) qui montre toutes les relations #include d'un ensemble donné de fichiers.

  • Infer — Un analyseur statique pour Java, C et Objective-C.

  • Inkog — Scanner de sécurité pour agents IA. Détecte les vulnérabilités comportementales (injection de prompt, boucles infinies, bombardement de jetons, injection SQL via LLM) sur 11 adaptateurs de frameworks, dont LangChain, CrewAI et pydantic-ai. Audite les serveurs MCP. Mappe les résultats à l'EU AI Act, à l'OWASP LLM Top 10 et au NIST AI RMF.

  • Joern — Joern est une plateforme d'analyse de code source, de bytecode et d'exécutables binaires. Il génère des graphes de propriétés de code (CPG), une représentation graphique du code pour l'analyse de code inter-langages. Les graphes de propriétés de code sont stockés dans une base de données de graphes personnalisée. Cela permet d'exploiter le code à l'aide de requêtes de recherche formulées dans un langage de requête spécifique au domaine basé sur Scala. Joern est développé dans le but de fournir un outil utile pour la découverte de vulnérabilités et la recherche en analyse statique de programmes.

  • jQAssistant — jQAssistant est une plateforme d'analyse logicielle basée sur des plugins qui permet d'analyser les structures de code et les métadonnées des dépôts dans une base de données de graphes Neo4j. Les données collectées peuvent être utilisées pour une exploration ad hoc via des requêtes, la visualisation ou la définition de règles pour une validation continue de l'architecture.

  • jscpd — Détecteur de copier-coller pour le code source de programmation. Trouve les blocs dupliqués dans plus de 200 formats de fichiers — JavaScript, TypeScript, Python, Java, C#, C/C++, Go, Rust, PHP, Ruby et plus — en utilisant une détection basée sur les jetons. Prend en charge des seuils et des modèles d'ignorance configurables, l'intégration git blame et des rapporteurs pour console, HTML, JSON, Markdown, SARIF et badges. S'exécute via CLI, dans des pipelines CI ou en tant que bibliothèque ; regroupé par MegaLinter et Codacy.

  • keploy — Keploy est une plateforme de test open source qui aide les développeurs à automatiser et rationaliser leur processus de test. Elle fournit des agents de test API et d'intégration, générant des tests, des mocks/stubs pour des API qui fonctionnent réellement. De plus, Keploy propose un agent de test unitaire alimenté par l'IA qui génère des tests unitaires stables et utiles directement dans vos PR GitHub et dans VSCode, aidant à détecter les erreurs et à améliorer la qualité du code.

  • Kiuwan ©️ — Identifiez et corrigez les cybermenaces dans un environnement collaboratif extrêmement rapide, avec une intégration transparente dans votre SDLC. Python, C\C++, Java, C#, PHP et plus.

  • Klocwork ©️ — Analyse statique de qualité et de sécurité pour C/C++, Java et C#.

  • LangLint — Plateforme de traduction automatisée pour les commentaires de code et les docstrings sur plus de 20 types de fichiers. Élimine les barrières linguistiques dans la collaboration logicielle internationale. Prend en charge plus de 100 paires de langues avec protection de la syntaxe. S'intègre dans les pipelines CI/CD comme Ruff. 10 à 20 fois plus rapide grâce au traitement concurrent.

  • LGTM ©️ — Trouvez les vulnérabilités de sécurité, les variantes et les problèmes critiques de qualité de code à l'aide de requêtes CodeQL sur le code source. Revue de code automatique des PR ; gratuit pour l'open source. Anciennement semmle. Prend en charge les dépôts Git publics hébergés sur Bitbucket Cloud, GitHub.com, GitLab.com.

  • lizard — Lizard est un analyseur de complexité cyclomatique extensible pour de nombreux langages de programmation, y compris C/C++ (ne nécessite pas tous les fichiers d'en-tête ou les imports Java). Il effectue également la détection de copier-coller (détection de clones de code/détection de code dupliqué) et de nombreuses autres formes d'analyse statique de code. Compte les lignes de code sans commentaires, la CCN (nombre de complexité cyclomatique), le nombre de jetons des fonctions, le nombre de paramètres des fonctions.

  • Mega-Linter — Mega-Linter peut gérer tout type de projet grâce à ses plus de 70 linters intégrés, ses rapports avancés, exécutable sur n'importe quel système CI ou localement, avec installation et configuration assistées, capable d'appliquer le formatage et les corrections.

  • Mobb ©️ — Mobb est un correcteur de vulnérabilités automatique et fiable qui sécurise les applications, réduit les arriérés de sécurité et libère les développeurs pour se concentrer sur l'innovation. Mobb est gratuit pour les projets open source.

  • MOPSA — Un analyseur statique conçu pour réutiliser facilement des domaines abstraits entre des langages très différents (comme C et Python).

  • nestjs-doctor — Outil d'analyse statique pour les applications NestJS. Détecte les anti-modèles en matière de sécurité, de performance, de correction et d'architecture avec plus de 30 règles intégrées. Produit un score de santé de 0 à 100. Inclut la visualisation du graphe de modules, les graphes de dépendances des points de terminaison et l'analyse du schéma de base de données. Extension CLI et VS Code.

  • Neurolint-CLI — Outil de transformation de code déterministe utilisant l'analyse AST et des transformations basées sur des règles. Corrige automatiquement plus de 50 problèmes, y compris les violations d'accessibilité, les erreurs d'hydratation, les migrations React 19/Next.js 16 et les mises à jour de configuration. Dispose d'une orchestration de sécurité en 5 étapes pour garantir zéro changement cassant. Spécialisé pour les projets React, Next.js et TypeScript.

  • oclint — Un outil d'analyse statique de code source pour améliorer la qualité et réduire les défauts pour C, C++ et Objective-C.

  • Offensive 360 ©️ — Le système commercial d'analyse statique de code ne nécessite pas la compilation du code source ni la pré-compilation.

  • Offensive360 ©️ — Offensive360 est une plateforme de sécurité applicative combinant SAST (analyse de flux de données/taint sur plus de 60 langages), DAST, SCA, analyse d'applications mobiles (Android/iOS), analyse de malwares/binaires et conformité des licences. Les résultats incluent la trace complète de la source au puits et un exemple de code sécurisé. Se déploie en SaaS ou en appliance virtuelle auto-hébergée pour les réseaux hors ligne/air-gapped. Sortie SARIF ; intégrations CI/CD (GitHub Actions, GitLab, Jenkins, Azure DevOps) et IDE.

  • OpenRewrite — OpenRewrite corrige les problèmes courants d'analyse statique signalés via Sonar et d'autres outils à l'aide d'un plugin Maven et Gradle ou de la CLI Moderne.

  • OpenStaticAnalyzer — OpenStaticAnalyzer est un outil d'analyse de code source qui peut effectuer une analyse statique approfondie du code source de systèmes complexes.

  • oxc — The Oxidation Compiler crée une suite d'outils haute performance pour le langage JavaScript / TypeScript réécrit en Rust.

  • parasoft ©️ — Solutions automatisées de test logiciel pour les tests unitaires, d'API et d'interface web. Conforme à MISRA, OWASP et autres.

  • pfff — Les outils de Facebook pour l'analyse de code, la visualisation ou la transformation de source préservant le style pour de nombreux langages.

  • Pixee ©️ — Pixeebot trouve les problèmes de sécurité et de qualité de code dans votre code et crée des pull requests prêtes à fusionner avec les corrections recommandées.

  • PMD — Un analyseur de code source pour Java, Salesforce Apex, Javascript, PLSQL, XML, XSL et autres.

  • pre-commit — Un framework pour gérer et maintenir des hooks pre-commit multilingues.

  • Precaution — Precaution est un outil de sécurité d'analyse statique (SAST) conçu pour trouver des vulnérabilités potentiellement critiques dans le code source avant la production. Il est disponible en tant que CLI, GitHub Action et GitHub App.

  • Prettier — Un formateur de code avec opinion.

  • Pronto — Revue de code automatisée rapide de vos modifications. Prend en charge plus de 40 runners pour divers langages, y compris Clang, Elixir, JavaScript, PHP, Ruby et plus.

  • PT.PM ⚠️ — Un moteur de recherche de modèles dans le code source, basé sur un AST unifié ou UST. Actuellement, C#, Java, PHP, PL/SQL, T-SQL et JavaScript sont pris en charge. Les modèles peuvent être décrits dans le code ou à l'aide d'un DSL.

  • Putout — Transformateur de code enfichable et configurable avec prise en charge intégrée des plugins eslint, babel pour js, jsx typescript, flow, markdown, yaml et json.

  • PVS-Studio ©️ — Une analyse statique (conditionnellement gratuite pour les FOSS et les développeurs individuels) du code C, C++, C# et Java. À des fins publicitaires, vous pouvez proposer un grand projet FOSS pour analyse par les employés de PVS. Prend en charge le mappage CWE, OWASP ASVS, MISRA, AUTOSAR et les normes de codage SEI CERT.

  • pylama ⚠️ — Outil d'audit de code pour Python et JavaScript. Enveloppe pycodestyle, pydocstyle, PyFlakes, Mccabe, Pylint et plus.

  • Qwiet AI ©️ — Identifiez les vulnérabilités propres à votre base de code avant qu'elles n'atteignent la production. Exploite le graphe de propriétés de code (CPG) pour exécuter ses analyses simultanément dans un graphe unique de graphes. Détecte automatiquement les défauts de logique métier en développement, comme les secrets codés en dur et les bombes logiques.

  • Refactoring Essentials ⚠️ — L'extension gratuite Visual Studio 2015 pour les refactorisations C# et VB.NET, y compris les analyseurs de bonnes pratiques de code.

  • relint — Un linter de fichiers statique qui vous permet d'écrire des règles personnalisées à l'aide d'expressions régulières (RegEx).

  • Repowise — Analyse de santé du code déterministe, sans LLM. Note chaque fichier de 1 à 10 pour le risque de défauts, la maintenabilité et la performance à partir de 25 marqueurs : complexité de McCabe, cohésion LCOM4, classes god, détection de clones Rabin-Karp, entropie de changement et points chauds non testés. Ajoute un graphe de dépendances, la détection de code mort, les signaux d'historique git (churn, propriété, co-évolution) et des plans concrets de refactorisation conscients du graphe. Livré en CLI, serveur MCP et extension VS Code sur 15 langages.

  • ReSharper ©️ — Étend Visual Studio avec des inspections de code à la volée pour C#, VB.NET, ASP.NET, JavaScript, TypeScript et d'autres technologies.

  • Rev-dep — Kit d'analyse et d'optimisation des dépendances pour les projets JavaScript et TypeScript modernes. Trace les imports, identifie les dépendances circulaires, trouve le code inutilisé, nettoie les modules node.

  • RIPS ©️ — Un analyseur statique de code source pour les vulnérabilités dans les scripts PHP.


Read more

Télécharger l’outil