Directory curata di strumenti di analisi statica (SAST) e linter per linguaggi di programmazione, configurazioni, strumenti di build e CI, incentrata sul miglioramento della qualità del codice.
Questo repository elenca strumenti di analisi statica per tutti i linguaggi di programmazione, strumenti di build, file di configurazione e altro. L'attenzione è rivolta agli strumenti che migliorano la qualità del codice come linter e formatter. Il sito web ufficiale, analysis-tools.dev, si basa su questo repository e aggiunge classifiche, commenti degli utenti e risorse aggiuntive come video per ogni strumento.
Questo progetto non sarebbe possibile senza il generoso supporto dei nostri sponsor.
|
|
|
|
Se anche tu vuoi sostenere questo progetto, visita la nostra pagina GitHub Sponsors.
Dai un'occhiata anche al progetto gemello, awesome-dynamic-analysis.
abaplint — Linter per ABAP, scritto in TypeScript.
abapOpenChecks — Migliora il SAP Code Inspector con controlli nuovi e personalizzabili.
Polyspace for Ada ©️ — Fornisce una verifica del codice che dimostra l'assenza di overflow, divisione per zero, accesso ad array fuori dai limiti e altri errori a runtime nel codice sorgente.
SPARK ©️ — Set di strumenti di analisi statica e verifica formale per Ada.
Astrée ©️ — Astrée dimostra automaticamente l'assenza di errori a runtime e di comportamenti concorrenti non validi nelle applicazioni C/C++. È corretto per i calcoli in virgola mobile, molto veloce ed eccezionalmente preciso. L'analizzatore verifica anche le regole di codifica MISRA/CERT/CWE/Adaptive Autosar e supporta la qualificazione per ISO 26262, DO-178C livello A e altri standard di sicurezza. Sono disponibili plugin per Jenkins ed Eclipse.
CBMC — Model-checker limitato per programmi C, asserzioni definite dall'utente, asserzioni standard, diverse analisi di metriche di copertura.
clang-tidy — Strumento linter C++ basato su Clang con la (limitata) capacità di correggere anche i problemi.
clazy — Analizzatore statico di codice orientato a Qt basato sul framework Clang. clazy è un plugin del compilatore che permette a clang di comprendere la semantica di Qt. Si ottengono più di 50 avvisi del compilatore relativi a Qt, che spaziano da allocazioni di memoria non necessarie a usi impropri delle API, incluse fix-it per il refactoring automatico.
CMetrics ⚠️ — Misura dimensione e complessità dei file C.
codechecker — Un database di difetti e un'estensione visualizzatore per il Clang Static Analyzer con GUI web.
CPAchecker — Uno strumento per la verifica configurabile del software di programmi C. Il nome CPAchecker è stato scelto per riflettere il fatto che lo strumento si basa sui concetti CPA ed è utilizzato per la verifica di programmi software.
cppcheck — Analisi statica di codice C/C++.
CppDepend ©️ — Misura, interroga e visualizza il tuo codice ed evita problemi imprevisti, debito tecnico e complessità.
cpplint — Verificatore C++ automatizzato che segue la guida di stile di Google.
cqmetrics ⚠️ — Metriche di qualità per codice C.
CScout — Metriche di complessità e qualità per codice C e preprocessore C.
ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) è uno strumento per l'estrazione delle dipendenze o relazioni tra entità di codice dal codice sorgente. ENRE-cpp è un ENtity Relationship Extractor per C/C++ basato su @eclipse/CDT. (In sviluppo)
ESBMC — ESBMC è un model checker open source, con licenza permissiva, a contesto limitato, basato sulle teorie della soddisfacibilità modulo, per la verifica di programmi C/C++ single- e multi-thread.
flawfinder — Trova possibili debolezze di sicurezza.
flint++ ⚠️ — Port cross-platform e senza dipendenze di flint, un programma lint per C++ sviluppato e utilizzato presso Facebook.
Frama-C — Un analizzatore statico corretto ed estensibile per codice C.
GCC — Il compilatore GCC ha capacità di analisi statica dalla versione 10. Questa opzione è disponibile solo se GCC è stato configurato con il supporto dell'analizzatore abilitato. Può anche produrre le sue diagnostiche in un file JSON nel formato SARIF (dalla v13).
Goblint — Un analizzatore statico per l'analisi di programmi C multi-thread. Il suo focus principale è il rilevamento di data race, ma segnala anche altri errori a runtime, come buffer overflow e dereferenziazioni di puntatori nulli.
Helix QAC ©️ — Analisi statica di livello enterprise per software embedded. Supporta gli standard di codifica MISRA, CERT e AUTOSAR.
IKOS ⚠️ — Un analizzatore statico corretto per codice C/C++ basato su LLVM.
KLEE — Un motore di esecuzione simbolica dinamica costruito sopra l'infrastruttura del compilatore LLVM. Può generare automaticamente casi di test per i programmi in modo che i casi di test esercitino il più possibile il programma.
LDRA ©️ — Una suite di strumenti che include analisi statica (TBVISION) per vari standard tra cui MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ e regole personalizzate.
MATE ⚠️ — Una suite di strumenti per l'analisi interattiva dei programmi con particolare attenzione alla ricerca di bug nel codice C e C++. MATE unifica l'analisi delle vulnerabilità specifiche dell'applicazione e di basso livello utilizzando i code property graph (CPG), consentendo la scoperta di vulnerabilità altamente specifiche dell'applicazione che dipendono sia dai dettagli implementativi sia dalla semantica di alto livello dei programmi C/C++ target.
PC-lint ©️ — Analisi statica per C/C++. Funziona nativamente su Windows/Linux/MacOS. Analizza il codice per praticamente qualsiasi piattaforma, supportando C11/C18 e C++17.
Phasar — Un framework di analisi statica basato su LLVM che include un'analisi di taint e di stato del tipo.
Polyspace Bug Finder ©️ — Identifica errori a runtime, problemi di concorrenza, vulnerabilità di sicurezza e altri difetti nel software embedded C e C++.
Polyspace Code Prover ©️ — Fornisce una verifica del codice che dimostra l'assenza di overflow, divisione per zero, accesso ad array fuori dai limiti e altri errori a runtime nel codice sorgente C e C++.
scan-build — Frontend per pilotare il Clang Static Analyzer integrato in Clang tramite una build regolare.
splint — Verificatore statico di programmi assistito da annotazioni.
SVF — Uno strumento statico che consente un'analisi delle dipendenze interprocedurale scalabile e precisa per programmi C e C++.
TrustInSoft Analyzer ©️ — Rilevamento esaustivo degli errori di codifica e delle vulnerabilità di sicurezza associate. Questo comprende un rilevamento corretto di comportamenti indefiniti (buffer overflow, accessi ad array fuori dai limiti, dereferenziazioni di puntatori nulli, use-after-free, divisioni per zero, accessi a memoria non inizializzata, overflow con segno, aritmetica di puntatori non valida, ecc.), verifica del flusso di dati e del flusso di controllo, nonché verifica funzionale completa delle specifiche formali. Sono supportate tutte le versioni di C fino a C18 e di C++ fino a C++20. TrustInSoft Analyzer otterrà la qualificazione ISO 26262 nel Q2'2023 (TCL3). È inoltre incluso un verificatore MISRA C.
vera++ ⚠️ — Vera++ è uno strumento programmabile per la verifica, l'analisi e la trasformazione del codice sorgente C++.
weggli ⚠️ — Uno strumento di ricerca semantica veloce e robusto per basi di codice C e C++. È progettato per aiutare i ricercatori di sicurezza a identificare funzionalità interessanti in grandi basi di codice.
.NET Analyzers — Un'organizzazione per lo sviluppo di analizzatori (diagnostiche e correzioni di codice) utilizzando la .NET Compiler Platform.
ArchUnitNET — Una libreria di test di architettura C# per specificare e verificare regole architetturali in C# per i test automatizzati.
code-cracker ⚠️ — Una libreria di analizzatori per C# e VB che utilizza Roslyn per produrre refactoring, analisi del codice e altre funzionalità.
CSharpEssentials ⚠️ — C# Essentials è una raccolta di analizzatori diagnostici Roslyn, correzioni di codice e refactoring che semplificano l'uso delle funzionalità del linguaggio C# 6.
Designite ©️ — Designite supporta il rilevamento di vari smell di architettura, design e implementazione, il calcolo di varie metriche di qualità del codice e l'analisi delle tendenze.
Gendarme ⚠️ — Gendarme ispeziona programmi e librerie che contengono codice in formato ECMA CIL (Mono e .NET).
Infer# ⚠️ — InferSharp (indicato anche come Infer#) è un analizzatore statico di codice interprocedurale e scalabile per C#. Tramite le capacità di Infer di Facebook, questo strumento rileva dereferenziazioni di puntatori nulli e perdite di risorse.
Meziantou.Analyzer — Un analizzatore Roslyn per imporre alcune buone pratiche in C# in termini di design, utilizzo, sicurezza, prestazioni e stile.
NDepend ©️ — Misura, interroga e visualizza il tuo codice ed evita problemi imprevisti, debito tecnico e complessità.
Puma Scan — Puma Scan fornisce analisi di sicurezza del codice in tempo reale per vulnerabilità comuni (XSS, SQLi, CSRF, LDAPi, crypto, deserializzazione, ecc.) mentre i team di sviluppo scrivono codice in Visual Studio.
Roslynator — Una raccolta di oltre 190 analizzatori e oltre 190 refactoring per C#, basata su Roslyn.
SonarAnalyzer.CSharp — Questi analizzatori Roslyn ti permettono di produrre Clean Code sicuro, affidabile e manutenibile, aiutandoti a trovare e correggere bug, vulnerabilità e code smell nella tua base di codice.
VSDiagnostics ⚠️ — Una raccolta di analizzatori statici basati su Roslyn che si integra con VS.
Wintellect.Analyzers ⚠️ — Analizzatori diagnostici e correzioni di codice della .NET Compiler Platform ("Roslyn").
Astrée ©️ — Astrée dimostra automaticamente l'assenza di errori a runtime e di comportamenti concorrenti non validi nelle applicazioni C/C++. È corretto per i calcoli in virgola mobile, molto veloce ed eccezionalmente preciso. L'analizzatore verifica anche le regole di codifica MISRA/CERT/CWE/Adaptive Autosar e supporta la qualificazione per ISO 26262, DO-178C livello A e altri standard di sicurezza. Sono disponibili plugin per Jenkins ed Eclipse.
CBMC — Model-checker limitato per programmi C, asserzioni definite dall'utente, asserzioni standard, diverse analisi di metriche di copertura.
clang-tidy — Strumento linter C++ basato su Clang con la (limitata) capacità di correggere anche i problemi.
clazy — Analizzatore statico di codice orientato a Qt basato sul framework Clang. clazy è un plugin del compilatore che permette a clang di comprendere la semantica di Qt. Si ottengono più di 50 avvisi del compilatore relativi a Qt, che spaziano da allocazioni di memoria non necessarie a usi impropri delle API, incluse fix-it per il refactoring automatico.
CMetrics ⚠️ — Misura dimensione e complessità dei file C.
codechecker — Un database di difetti e un'estensione visualizzatore per il Clang Static Analyzer con GUI web.
cppcheck — Analisi statica di codice C/C++.
CppDepend ©️ — Misura, interroga e visualizza il tuo codice ed evita problemi imprevisti, debito tecnico e complessità.
cpplint — Verificatore C++ automatizzato che segue la guida di stile di Google.
cqmetrics ⚠️ — Metriche di qualità per codice C.
CScout — Metriche di complessità e qualità per codice C e preprocessore C.
ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) è uno strumento per l'estrazione delle dipendenze o relazioni tra entità di codice dal codice sorgente. ENRE-cpp è un ENtity Relationship Extractor per C/C++ basato su @eclipse/CDT. (In sviluppo)
ESBMC — ESBMC è un model checker open source, con licenza permissiva, a contesto limitato, basato sulle teorie della soddisfacibilità modulo, per la verifica di programmi C/C++ single- e multi-thread.
flawfinder — Trova possibili debolezze di sicurezza.
flint++ ⚠️ — Port cross-platform e senza dipendenze di flint, un programma lint per C++ sviluppato e utilizzato presso Facebook.
GCC — Il compilatore GCC ha capacità di analisi statica dalla versione 10. Questa opzione è disponibile solo se GCC è stato configurato con il supporto dell'analizzatore abilitato. Può anche produrre le sue diagnostiche in un file JSON nel formato SARIF (dalla v13).
Helix QAC ©️ — Analisi statica di livello enterprise per software embedded. Supporta gli standard di codifica MISRA, CERT e AUTOSAR.
IKOS ⚠️ — Un analizzatore statico corretto per codice C/C++ basato su LLVM.
KLEE — Un motore di esecuzione simbolica dinamica costruito sopra l'infrastruttura del compilatore LLVM. Può generare automaticamente casi di test per i programmi in modo che i casi di test esercitino il più possibile il programma.
LDRA ©️ — Una suite di strumenti che include analisi statica (TBVISION) per vari standard tra cui MISRA C & C++, JSF++ AV, CWE, CERT C, CERT C++ e regole personalizzate.
MATE ⚠️ — Una suite di strumenti per l'analisi interattiva dei programmi con particolare attenzione alla ricerca di bug nel codice C e C++. MATE unifica l'analisi delle vulnerabilità specifiche dell'applicazione e di basso livello utilizzando i code property graph (CPG), consentendo la scoperta di vulnerabilità altamente specifiche dell'applicazione che dipendono sia dai dettagli implementativi sia dalla semantica di alto livello dei programmi C/C++ target.
PC-lint ©️ — Analisi statica per C/C++. Funziona nativamente su Windows/Linux/MacOS. Analizza il codice per praticamente qualsiasi piattaforma, supportando C11/C18 e C++17.
Phasar — Un framework di analisi statica basato su LLVM che include un'analisi di taint e di stato del tipo.- Polyspace Bug Finder ©️ — Identifica errori di run-time, problemi di concorrenza, vulnerabilità di sicurezza e altri difetti nel software embedded C e C++.
Polyspace Code Prover ©️ — Fornisce una verifica del codice che dimostra l'assenza di overflow, divisione per zero, accesso ad array fuori dai limiti e altri errori di run-time nel codice sorgente C e C++.
scan-build — Frontend per pilotare il Clang Static Analyzer integrato in Clang tramite una build regolare.
splint — Verificatore statico di programmi assistito da annotazioni.
SVF — Uno strumento statico che consente un'analisi delle dipendenze interprocedurale scalabile e precisa per programmi C e C++.
TrustInSoft Analyzer ©️ — Rilevamento esaustivo di errori di codifica e delle relative vulnerabilità di sicurezza. Questo comprende un rilevamento affidabile di comportamenti indefiniti (buffer overflow, accessi ad array fuori dai limiti, dereferenziazioni di puntatori nulli, use-after-free, divisioni per zero, accessi a memoria non inizializzata, overflow con segno, aritmetica di puntatori non valida, ecc.), verifica del flusso di dati e del flusso di controllo, nonché verifica funzionale completa di specifiche formali. Sono supportate tutte le versioni di C fino a C18 e di C++ fino a C++20. TrustInSoft Analyzer otterrà la qualifica ISO 26262 nel Q2'2023 (TCL3). È inoltre incluso un checker MISRA C.
vera++ ⚠️ — Vera++ è uno strumento programmabile per la verifica, l'analisi e la trasformazione del codice sorgente C++.
weggli ⚠️ — Uno strumento di ricerca semantica veloce e robusto per basi di codice C e C++. È progettato per aiutare i ricercatori di sicurezza a identificare funzionalità interessanti in grandi basi di codice.
Dart Code Metrics ⚠️ — Linter aggiuntivo per Dart. Riporta metriche del codice, verifica la presenza di anti-pattern e fornisce regole aggiuntive per l'analizzatore Dart.
effective_dart ⚠️ — Regole del linter corrispondenti alle linee guida di Effective Dart
lint ⚠️ — Un insieme di regole di lint orientato e guidato dalla community per progetti Dart e Flutter. Come pedantic ma più severo
Linter for dart ⚠️ — Linter di stile per Dart.
DelphiLint — Un pacchetto IDE Delphi che fornisce analisi del codice e linting in tempo reale, basato su SonarDelphi.
Fix Insight ©️ — Un plugin IDE gratuito per l'analisi statica del codice. Un'edizione Pro include uno strumento da riga di comando per scopi di automazione.
Pascal Analyzer ©️ — Uno strumento di analisi statica del codice con numerosi report. È disponibile una versione Lite gratuita con report limitati.
Pascal Expert ©️ — Plugin IDE per l'analisi del codice. Include un sottoinsieme delle capacità di reportistica di Pascal Analyzer ed è disponibile per le versioni di Delphi dal 2007 in poi.
SonarDelphi — Analizzatore statico Delphi per la piattaforma di qualità del codice SonarQube.
elm-analyse ⚠️ — Uno strumento che ti consente di analizzare il tuo codice Elm, identificare carenze e applicare le best practice.
elm-review — Analizza interi progetti Elm, con particolare attenzione a regole condivisibili e personalizzate scritte in Elm che aggiungono garanzie che il compilatore Elm non ti fornisce.
dialyzer — Il DIALYZER, un DIscrepancy AnaLYZer per programmi ERlang. Dialyzer è uno strumento di analisi statica che identifica discrepanze nel software, come errori di tipo definiti, codice diventato morto o irraggiungibile a causa di errori di programmazione, e test non necessari, in singoli moduli Erlang o interi (insiemi di) applicazioni. Dialyzer avvia la sua analisi dal bytecode BEAM compilato in modalità debug oppure dal codice sorgente Erlang. Il file e il numero di riga di una discrepanza vengono riportati insieme a un'indicazione di cosa riguarda la discrepanza. Dialyzer basa la sua analisi sul concetto di success typings, che consente avvisi affidabili (nessun falso positivo).
elvis — Erlang Style Reviewer.
Primitive Erlang Security Tool (PEST) ⚠️ — Uno strumento per eseguire una scansione di base del codice sorgente Erlang e segnalare qualsiasi chiamata di funzione che potrebbe rendere insicuro il codice sorgente Erlang.
fantomas — Formattatore di codice sorgente F#.
FSharpLint — Strumento di lint per F#.
ionide-analyzers — Una raccolta di analizzatori F#, realizzati con l'FSharp.Analyzers.SDK.
Fortitude — Linter per Fortran, ispirato a (e basato su) Ruff, e basato sulle best practice della community. Supporta lo standard Fortran più recente (2023).
fprettify — Auto-formattatore per codice sorgente Fortran moderno, scritto in Python. Fprettify è uno strumento che fornisce spaziatura, indentazione e allineamento dei delimitatori coerenti nel codice, inclusa la capacità di modificare il caso delle lettere e gestire le direttive del preprocessore, il tutto preservando la cronologia delle revisioni e testato per l'integrazione con gli editor.
i-Code CNES for Fortran ⚠️ — Uno strumento open source di analisi statica del codice per Fortran 77, Fortran 90 e Shell.
aligncheck — Trova struct impacchettate in modo inefficiente.
bodyclose — Verifica se il corpo della risposta HTTP è chiuso.
deadcode ⚠️ — Trova codice inutilizzato.
dingo-hunter ⚠️ — Analizzatore statico per trovare deadlock in Go.
dogsled ⚠️ — Trova assegnazioni/dichiarazioni con troppi identificatori vuoti.
dupl — Segnala codice potenzialmente duplicato.
errcheck — Verifica che i valori di ritorno degli errori siano utilizzati.
errwrap ⚠️ — Avvolgi e correggi gli errori Go con la nuova direttiva verb %w. Questo strumento analizza le chiamate a fmt.Errorf() e segnala le chiamate che contengono una direttiva verb diversa dalla nuova direttiva verb %w introdotta in Go v1.13. È anche in grado di riscrivere le chiamate per utilizzare la nuova direttiva verb di wrapping %w.
flen — Ottieni informazioni sulla lunghezza delle funzioni in un pacchetto Go.
Go Meta Linter ⚠️ — Esegui contemporaneamente strumenti di lint Go e normalizza il loro output. Usa golangci-lint per nuovi progetti.
go tool vet --shadow — Segnala variabili che potrebbero essere state oscurate involontariamente.
go vet — Esamina il codice sorgente Go e segnala elementi sospetti.
go-consistent ⚠️ — Analizzatore che ti aiuta a rendere i tuoi programmi Go più coerenti.
go-critic — Linter per codice sorgente Go che mantiene controlli attualmente non implementati in altri linter.
go/ast — Il pacchetto ast dichiara i tipi utilizzati per rappresentare gli alberi sintattici per i pacchetti Go.
goast — Strumento di analisi statica basato su Go AST (Abstract Syntax Tree) con Rego.
gochecknoglobals ⚠️ — Verifica che non siano presenti variabili globali.
goconst — Trova stringhe ripetute che potrebbero essere sostituite da una costante.
gocyclo — Calcola le complessità ciclomatiche delle funzioni nel codice sorgente Go.
gofmt -s — Verifica se il codice è formattato correttamente e non potrebbe essere ulteriormente semplificato.
gofumpt — Impone un formato più rigoroso di gofmt, rimanendo retrocompatibile. Ovvero, gofumpt è soddisfatto di un sottoinsieme dei formati di cui è soddisfatto gofmt.
Lo strumento è un fork di gofmt a partire da Go 1.19, e richiede Go 1.18 o successivo. Può essere utilizzato come sostituto diretto per formattare il tuo codice Go, ed eseguire gofmt dopo gofumpt non dovrebbe produrre modifiche.
gofumpt non aggiungerà mai regole che non concordano con la formattazione di gofmt. Quindi estendiamo gofmt piuttosto che competere con esso.
goimports — Verifica import di pacchetti mancanti o non referenziati.
gokart ⚠️ — Analisi di sicurezza per Golang con particolare attenzione alla minimizzazione dei falsi positivi. È in grado di tracciare l'origine di variabili e argomenti di funzione per determinare se le fonti di input sono sicure.
GolangCI-Lint — Runner di linter veloce per Go. Aggrega più linter Go e fornisce una configurazione unificata, caching e formato di output. Alternativa a Go Meta Linter.
golint ⚠️ — Stampa errori di stile di codifica nel codice sorgente Go.
goreporter ⚠️ — Esegue contemporaneamente molti linter e normalizza il loro output in un report.
goroutine-inspect ⚠️ — Uno strumento interattivo per analizzare il dump delle goroutine di Golang.
gosec (gas) — Ispeziona il codice sorgente alla ricerca di problemi di sicurezza scansionando l'AST di Go.
gotype — Analisi sintattica e semantica simile al compilatore Go.
govulncheck — Govulncheck segnala vulnerabilità note che interessano il codice Go. Utilizza l'analisi statica del codice sorgente o della tabella dei simboli di un binario per restringere i report solo a quelli che potrebbero interessare l'applicazione. Per impostazione predefinita, govulncheck effettua richieste al database delle vulnerabilità Go all'indirizzo https://vuln.go.dev. Le richieste al database delle vulnerabilità contengono solo percorsi di moduli, non codice o altre proprietà del tuo programma.
ineffassign ⚠️ — Rileva assegnazioni inefficaci nel codice Go.
interfacer ⚠️ — Suggerisce interfacce più ristrette che possono essere utilizzate.
lll ⚠️ — Segnala righe lunghe.
maligned ⚠️ — Rileva struct che occuperebbero meno memoria se i loro campi fossero ordinati.
misspell ⚠️ — Trova parole inglesi comunemente scritte in modo errato.
nakedret ⚠️ — Trova return nudi.
nargs ⚠️ — Trova argomenti inutilizzati nelle dichiarazioni di funzione.
OSV-Scanner — Scanner di vulnerabilità scritto in Go che utilizza i dati forniti da OSV.dev. Sviluppato da Google per scansionare le dipendenze in più linguaggi e gestori di pacchetti alla ricerca di vulnerabilità note. Supporta la scansione di container, la scansione di licenze e la remediation guidata. Funziona con lockfile, SBOM e immagini di container per identificare problemi di sicurezza.
prealloc — Trova dichiarazioni di slice che potrebbero potenzialmente essere preallocate.
Reviewdog — Uno strumento per pubblicare commenti di revisione da qualsiasi linter in qualsiasi servizio di hosting del codice.
revive — Linter veloce, configurabile, estensibile, flessibile e bello per Go. Sostituto diretto di golint.
safesql ⚠️ — Strumento di analisi statica per Golang che protegge dalle SQL injection.
shisho ⚠️ — Un analizzatore statico di codice leggero progettato per sviluppatori e team di sicurezza. Ti consente di analizzare e trasformare il codice sorgente con un DSL intuitivo simile a sed, ma per il codice.
staticcheck — Analisi statica per Go specializzata nel trovare bug, semplificare il codice e migliorare le prestazioni.
structcheck — Trova campi di struct inutilizzati.
structslop ⚠️ — Analizzatore statico per Go che raccomanda riorganizzazioni dei campi delle struct per garantire la massima efficienza di spazio/allocazione
test — Mostra la posizione dei fallimenti dei test dal modulo testing della stdlib.
unconvert — Rileva conversioni di tipo ridondanti.
unparam — Trova parametri di funzione inutilizzati.
varcheck — Trova variabili globali e costanti inutilizzate.
wsl — Impone righe vuote nei posti giusti.
brittany ⚠️ — Formattatore di codice sorgente Haskell
HLint — HLint è uno strumento per suggerire possibili miglioramenti al codice Haskell.
Liquid Haskell — Liquid Haskell è un verificatore di tipi di raffinamento per programmi Haskell.
Stan — Stan è uno strumento da riga di comando per analizzare progetti Haskell e restituire le vulnerabilità scoperte in modo utile con possibili soluzioni per i problemi rilevati.
Weeder — Uno strumento per rilevare export o import di pacchetti morti nel codice Haskell.
Checker Framework — Type-checking pluggable per Java. Non è solo un bug-finder, ma uno strumento di verifica che fornisce una garanzia di correttezza. Viene fornito con 27 sistemi di tipi predefiniti e consente agli utenti di definire il proprio sistema di tipi; il manuale elenca oltre 30 sistemi di tipi contribuiti dagli utenti.
checkstyle — Verifica del codice sorgente Java per l'aderenza a uno standard di codifica o a un insieme di regole di validazione (best practice).
ck — Calcola le metriche orientate agli oggetti di Chidamber e Kemerer elaborando i file sorgente Java.
ckjm ⚠️ — Calcola le metriche orientate agli oggetti di Chidamber e Kemerer elaborando il bytecode dei file Java compilati.
CogniCrypt ⚠️ — Verifica il codice sorgente e il bytecode Java per usi errati di API crittografiche.
Dataflow Framework — Un framework di dataflow di livello industriale per Java. Il Dataflow Framework è utilizzato nel Checker Framework, in Error Prone di Google, in NullAway di Uber, in Nullsafe di Meta e in altri contesti. È distribuito con il Checker Framework.
DesigniteJava ©️ — DesigniteJava supporta il rilevamento di vari smell di architettura, design e implementazione insieme al calcolo di varie metriche di qualità del codice.
Diffblue ©️ — Diffblue è un'azienda software che fornisce soluzioni di analisi e testing del codice basate sull'IA per i team di sviluppo software. La sua tecnologia aiuta gli sviluppatori ad automatizzare i test, trovare bug e ridurre il lavoro manuale nei loro processi di sviluppo software. Il prodotto principale dell'azienda, Diffblue Cover, utilizza l'IA per generare ed eseguire unit test per il codice Java, aiutando a individuare errori e migliorare la qualità del codice.
Doop — Doop è un framework dichiarativo per l'analisi statica di programmi Java/Android, incentrato su algoritmi di analisi dei puntatori. Doop fornisce una grande varietà di analisi e anche l'impalcatura circostante per eseguire un'analisi end-to-end (generazione di fatti, elaborazione, statistiche, ecc.).
ENRE-java ⚠️ — ENRE (ENtity Relationship Extractor) è uno strumento per l'estrazione di dipendenze o relazioni tra entità di codice dal codice sorgente. ENRE-java è un ENtity Relationship Extractor per progetti Java basato su @Eclipse JDT/parser.
Error Prone — Cattura errori comuni di Java come errori in fase di compilazione.
fb-contrib — Un plugin per FindBugs con rilevatori di bug aggiuntivi.
forbidden-apis — Rileva e vieta invocazioni di specifici metodi/classi/campi (come la lettura da uno stream di testo senza un charset). Compatibile con Maven/Gradle/Ant.
google-java-format — Riformatta il codice sorgente Java per conformarsi a Google Java Style
HuntBugs ⚠️ — Strumento di analisi statica del bytecode basato su Procyon Compiler Tools, finalizzato a sostituire FindBugs.
IntelliJ IDEA ©️ — Viene fornito con molte ispezioni per Java e Kotlin e include strumenti per il refactoring, la formattazione e altro ancora.
JArchitect ©️ — Misura, interroga e visualizza il tuo codice ed evita problemi imprevisti, debito tecnico e complessità.
JBMC — Bounded model-checker per Java (bytecode), verifica asserzioni definite dall'utente, asserzioni standard, diverse analisi di metriche di copertura.
JLiSA — Un analizzatore statico basato sull'interpretazione astratta per Java, costruito sul framework LiSA.
Mariana Trench — Il nostro strumento di analisi statica orientato alla sicurezza per applicazioni Android e Java. Mariana Trench analizza il bytecode Dalvik ed è costruito per funzionare velocemente su grandi basi di codice (decine di milioni di righe di codice). Può trovare vulnerabilità man mano che il codice cambia, prima che arrivi mai nel tuo repository.
NullAway — Verificatore di puntatori nulli basato sui tipi con basso overhead in fase di build; un plugin di Error Prone.
OWASP Dependency Check ⚠️ — Verifica le dipendenze alla ricerca di vulnerabilità note e divulgate pubblicamente.
qulice — Combina alcuni strumenti di analisi statica (preconfigurati) (checkstyle, PMD, Findbugs, ...).
RefactorFirst — Identifica e prioritizza le God Class e le classi altamente accoppiate nelle basi di codice Java che dovresti rifattorizzare per prime.
Soot — Un framework per l'analisi e la trasformazione di applicazioni Java e Android.- Spoon — Spoon è una libreria di metaprogrammazione per analizzare e trasformare il codice sorgente Java (incl. Java 9, 10, 11, 12, 13, 14). Analizza i file sorgente per costruire un AST ben progettato con potenti API di analisi e trasformazione. Può essere integrato in Maven e Gradle.
SpotBugs — SpotBugs è il successore di FindBugs. Uno strumento per l'analisi statica alla ricerca di bug nel codice Java.
steady ⚠️ — Analizza le tue applicazioni Java per dipendenze open-source con vulnerabilità note, utilizzando sia l'analisi statica che il testing per determinare il contesto e l'utilizzo del codice con maggiore accuratezza.
Violations Lib — Libreria Java per l'analisi dei file di report dall'analisi statica del codice. Utilizzata da numerosi plugin Jenkins, Maven e Gradle.
aether ⚠️ — Lint, analizza, normalizza, trasforma, sandbox, esegui, esegui passo-passo e visualizza JavaScript dell'utente, in node o nel browser.
Closure Compiler — Uno strumento di compilazione per aumentare l'efficienza, ridurre le dimensioni e fornire avvisi sul codice nei file JavaScript.
ClosureLinter ⚠️ — Assicura che tutto il codice JavaScript del tuo progetto segua le linee guida del Google JavaScript Style Guide. Può anche correggere automaticamente molti errori comuni.
complexity-report ⚠️ — Analisi della complessità del software per progetti JavaScript.
DeepScan ©️ — Un analizzatore per JavaScript che si concentra su errori a runtime e problemi di qualità piuttosto che sulle convenzioni di codifica.
es6-plato ⚠️ — Visualizza la complessità del codice sorgente JavaScript (ES6).
escomplex ⚠️ — Analisi della complessità del software degli alberi sintattici astratti della famiglia JavaScript.
Esprima ⚠️ — Infrastruttura di parsing ECMAScript per analisi multiuso.
flow — Un type checker statico per JavaScript.
hegel ⚠️ — Un type checker statico per JavaScript con una propensione all'inferenza dei tipi e ai sistemi di tipi forti.
jshint ℹ️ ⚠️ — Rileva errori e potenziali problemi nel codice JavaScript e applica le convenzioni di codifica del tuo team.
JSPrime ⚠️ — Strumento di analisi statica della sicurezza.
NodeJSScan ⚠️ — Uno scanner statico di sicurezza del codice per applicazioni Node.js basato su libsast e semgrep che si fonda sullo strumento CLI njsscan. Presenta una UI con varie dashboard sullo stato di sicurezza di un'applicazione.
plato ⚠️ — Visualizza la complessità del codice sorgente JavaScript.
Polymer-analyzer — Un framework di analisi statica per Web Components.
retire.js — Scanner che rileva l'uso di librerie JavaScript con vulnerabilità note.
RSLint ⚠️ — Un linter JavaScript (WIP) scritto in Rust progettato per essere il più veloce possibile, personalizzabile e facile da usare.
squirrelscan — squirrelscan è uno strumento di QA per siti web pensato per agenti di coding come Claude Code e Cursor. La sua CLI squirrel esegue la scansione di un sito live e applica oltre 260 regole di audit su SEO, performance, sicurezza, accessibilità, dati strutturati e agent experience, restituendo correzioni esatte mappate al sorgente. Funziona da terminale, CI, cloud o tramite MCP.
standard ⚠️ — Un modulo npm che verifica problemi di Javascript Styleguide.
tern — Un analizzatore di codice JavaScript per un supporto linguistico profondo e cross-editor.
TypL ⚠️ — Con TypL, scrivi semplicemente JS completamente standard e lo strumento deduce i tuoi tipi tramite una potente inferenza.
xo — Wrapper ESLint opinionato ma configurabile con molte chicche incluse. Impone codice rigoroso e leggibile.
yardstick ⚠️ — Metriche del codice Javascript.
JET — Sistema di inferenza statica dei tipi per rilevare bug e instabilità dei tipi.
StaticLint — Analisi statica del codice per Julia
detekt — Analisi statica del codice per il codice Kotlin.
diktat ⚠️ — Standard di codifica rigoroso per Kotlin e un linter che rileva e corregge automaticamente i code smell.
ktfmt — Un programma che riformatta il codice sorgente Kotlin per conformarsi allo standard comune della community per le convenzioni di codice Kotlin. Un plugin IntelliJ per ktfmt è disponibile dal repository dei plugin. Per installarlo, vai nelle impostazioni del tuo IDE e seleziona la categoria Plugins. Clicca sulla scheda Marketplace, cerca il plugin ktfmt e clicca sul pulsante Install.
ktlint — Un linter Kotlin anti-bikeshedding con formatter integrato.
luacheck — Uno strumento per il linting e l'analisi statica del codice Lua.
lualint ⚠️ — lualint esegue un'analisi statica basata su luac dell'utilizzo delle variabili globali nel codice sorgente Lua.
Luanalysis ⚠️ — Un IDE per lo sviluppo di Lua con tipizzazione statica.
MISS_HIT ⚠️ — MISS_HIT è un set di strumenti di qualità del codice gratuito e open-source per MATLAB, Simulink e Octave. Include MH Style (style checker e formatter), MH Metrics (metriche di complessità), MH Lint (analisi statica), MH Trace (tracciabilità dei requisiti) e MH Copyright (gestione del copyright). Progettato per funzionare in modo autonomo senza richiedere l'installazione di MATLAB/Octave.
mlint ©️ — Verifica i file di codice MATLAB per possibili problemi.
DrNim — DrNim combina il frontend Nim con il motore di dimostrazione Z3 per consentire la verifica / validazione del software scritto in Nim.
nimfmt ⚠️ — Formatter / linter / style checker per codice Nim
Sys ⚠️ — Uno strumento statico/simbolico per trovare bug nel codice (del browser). Utilizza l'AST di LLVM per trovare bug come l'accesso a memoria non inizializzata.
VeriFast — Uno strumento per la verifica formale modulare delle proprietà di correttezza di programmi C e Java single-threaded e multithreaded annotati con precondizioni e postcondizioni scritte in separation logic. Per esprimere specifiche ricche, il programmatore può definire tipi di dati induttivi, funzioni pure ricorsive primitive su questi tipi di dati e predicati astratti di separation logic.
CakeFuzzer ⚠️ — Strumento di security testing per applicazioni web basate su CakePHP. CakeFuzzer impiega un set predefinito di attacchi che vengono modificati casualmente prima dell'esecuzione. Sfruttando la sua profonda comprensione del framework Cake PHP, Cake Fuzzer lancia attacchi su tutti i potenziali punti di ingresso dell'applicazione.
churn-php — Aiuta a scoprire buoni candidati per il refactoring.
composer-dependency-analyser — Rilevamento rapido di problemi nelle dipendenze composer.
dephpend — Strumento di analisi delle dipendenze.
deprecation-detector ⚠️ — Trova gli utilizzi di codice (Symfony) deprecato.
deptrac — Impone regole per le dipendenze tra i livelli software.
DesignPatternDetector ⚠️ — Rilevamento di design pattern nel codice PHP.
EasyCodingStandard — Combina PHP_CodeSniffer e PHP-CS-Fixer.
Enlightn ⚠️ — Uno strumento di analisi statica e dinamica per applicazioni Laravel che fornisce raccomandazioni per migliorare le performance, la sicurezza e l'affidabilità del codice delle app Laravel. Contiene 120 controlli automatizzati.
exakat ⚠️ — Un motore automatizzato di code review per PHP.
GrumPHP — Verifica il codice ad ogni commit.
larastan — Aggiunge l'analisi statica a Laravel migliorando la produttività degli sviluppatori e la qualità del codice. È un wrapper attorno a PHPStan.
mago — Mago è una toolchain completa per PHP, scritta in Rust, progettata da zero per le massime prestazioni.
✨ Un formatter velocissimo che formatta automaticamente il tuo codice secondo PER-CS, ponendo fine per sempre ai dibattiti sullo stile. - 🔎 Un linter intelligente che intercetta problemi stilistici, incoerenze e code smell prima che diventino problemi. - 🔬 Un potente analizzatore statico che trova errori di tipo e bug logici nel tuo codice senza che tu debba mai eseguirlo. - 🛡️ Una robusta guardia architetturale che impone regole di dipendenza e convenzioni strutturali.
Mondrian ⚠️ — Un set di strumenti di analisi statica e refactoring che utilizzano la teoria dei grafi.
parallel-lint — Questo strumento verifica la sintassi dei file PHP più velocemente del controllo seriale con un output più raffinato.
Parse ⚠️ — Uno Static Security Scanner.
pdepend — Calcola metriche software come la complessità ciclomatica per il codice PHP.
phan — Un moderno analizzatore statico di etsy.
PHP Architecture Tester — Strumento facile da usare per il testing dell'architettura per PHP.
PHP Assumptions ⚠️ — Verifica assunzioni deboli.
PHP Coding Standards Fixer — Corregge il tuo codice secondo standard come PSR-1, PSR-2 e lo standard Symfony.
PHP Insights — Controlli di qualità PHP istantanei dalla tua console. Analisi della qualità del codice e dello stile di codifica, oltre a una panoramica dell'architettura del codice e della sua complessità.
Php Inspections (EA Extended) — Un analizzatore statico del codice per PHP.
PHP Refactoring Browser ⚠️ — Assistente al refactoring.
PHP Semantic Versioning Checker — Suggerisce una versione successiva secondo il versionamento semantico.
PHP-Parser — Un parser PHP scritto in PHP.
php-speller ⚠️ — Libreria di controllo ortografico per PHP.
PHP-Token-Reflection ⚠️ — Libreria che emula la reflection interna di PHP.
php7cc ⚠️ — Verificatore di compatibilità con PHP 7.
php7mar ⚠️ — Aiuta gli sviluppatori a portare rapidamente il loro codice a PHP 7.
PHP_CodeSniffer ⚠️ — Rileva violazioni di un set definito di standard di codifica.
PHPArkitect — PHPArkitect ti aiuta a mantenere il tuo codebase PHP coerente e solido, permettendoti di aggiungere alcuni controlli di vincoli architetturali al tuo workflow. Puoi esprimere il vincolo che vuoi imporre, in codice PHP semplice e leggibile.
phpca ⚠️ — Trova l'utilizzo di estensioni non built-in.
phpcpd ⚠️ — Rilevatore di copia/incolla per il codice PHP.
phpdcd ⚠️ — Rilevatore di codice morto (DCD) per il codice PHP.
PhpDependencyAnalysis ⚠️ — Costruisce un grafo delle dipendenze per un progetto.
PhpDeprecationDetector ⚠️ — Analizzatore di codice PHP per cercare problemi con funzionalità deprecate nelle versioni più recenti dell'interprete. Trova oggetti rimossi (funzioni, variabili, costanti e direttive ini), funzionalità di funzioni deprecate e utilizzo di nomi o trucchi proibiti (ad es. identificatori riservati nelle versioni più recenti).
phpdoc-to-typehint ⚠️ — Aggiunge type hint scalari e tipi di ritorno a progetti PHP esistenti utilizzando annotazioni PHPDoc.
phpDocumentor — Analizza il codice sorgente PHP per generare documentazione.
phploc ⚠️ — Uno strumento per misurare rapidamente le dimensioni e analizzare la struttura di un progetto PHP.
PHPMD — Trova possibili bug nel tuo codice.
PhpMetrics — Calcola e visualizza varie metriche di qualità del codice.
phpmnd — Aiuta a rilevare i magic number.
PHPQA — Uno strumento per eseguire strumenti di QA (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
phpqa - jakzal — Molti strumenti per l'analisi statica PHP in un unico container.
phpqa - jmolivas ⚠️ — Strumento CLI all-in-one per l'analisi PHPQA.
phpsa ⚠️ — Strumento di analisi statica per PHP.
PHPStan — PHP Static Analysis Tool - scopri i bug nel tuo codice senza eseguirlo!
Progpilot ⚠️ — Uno strumento di analisi statica per scopi di sicurezza.
Psalm — Strumento di analisi statica per trovare errori di tipo nelle applicazioni PHP.
Qafoo Quality Analyzer ⚠️ — Visualizza metriche e codice sorgente.
rector — Aggiornamenti istantanei e refactoring automatizzato di qualsiasi codice PHP 5.3+. Aggiorna il tuo codice per PHP 7.4, 8.0 e oltre. Rector promette un basso tasso di falsi positivi perché cerca pattern AST (abstract syntax tree) strettamente definiti. Il caso d'uso principale è affrontare il debito tecnico nel tuo codice legacy e rimuovere il codice morto. Rector fornisce un set di regole speciali per Symfony, Doctrine, PHPUnit e molti altri.
Reflection — Libreria di reflection per eseguire analisi statica per progetti PHP
Symfony Insight ©️ — Rileva rischi di sicurezza, trova bug e fornisce metriche actionable per progetti PHP.
Tuli ⚠️ — Un motore di analisi statica.
twig-lint ⚠️ — twig-lint è uno strumento di lint per i tuoi file twig.
WAP — Strumento per rilevare e correggere vulnerabilità di validazione dell'input in applicazioni web PHP (4.0 o superiore) e prevede i falsi positivi combinando analisi statica e data mining.
Perl::Analyzer ⚠️ — Perl-Analyzer è un set di programmi e moduli che consentono agli utenti di analizzare e visualizzare codebase Perl fornendo informazioni su namespace e le loro relazioni, dipendenze, ereditarietà e metodi implementati, ereditati e ridefiniti nei package, nonché chiamate a metodi da package genitori tramite SUPER.
Perl::Critic — Analizza criticamente il codice sorgente Perl per le best-practice.
perltidy — Perltidy è uno script Perl che indenta e riformatta gli script Perl per renderli più facili da leggere. La formattazione può essere controllata con parametri da riga di comando. Le impostazioni predefinite dei parametri seguono approssimativamente i suggerimenti del Perl Style Guide. Oltre a riformattare gli script, Perltidy può essere di grande aiuto nel rintracciare errori con parentesi graffe, tonde e quadre mancanti o in eccesso perché è molto bravo a localizzare gli errori.
zarn — Uno strumento leggero di analisi statica della sicurezza per app Perl moderne
autoflake — Autoflake rimuove import inutilizzati e variabili inutilizzate dal codice Python.
autopep8 — Uno strumento che formatta automaticamente il codice Python per conformarsi alla guida di stile PEP 8. Utilizza l'utility pycodestyle per determinare quali parti del codice devono essere formattate.
bandit — Uno strumento per trovare problemi di sicurezza comuni nel codice Python.
bellybutton ⚠️ — Un motore di linting che supporta regole personalizzate specifiche del progetto.
Black — Il formatter di codice Python intransigente.
Bowler ⚠️ — Refactoring sicuro del codice per Python moderno. Bowler è uno strumento di refactoring per manipolare Python a livello di albero sintattico. Consente modifiche sicure del codice su larga scala garantendo che il codice risultante compili e funzioni. Fornisce sia una semplice interfaccia a riga di comando sia un'API fluente in Python per generare modifiche complesse del codice nel codice.
ciocheck ⚠️ — Linter, formatter e assistente per suite di test. Come linter, è un wrapper attorno a pep8, pydocstyle, flake8 e pylint.
cohesion ⚠️ — Uno strumento per misurare la coesione delle classi Python.
deal — Design by contract per Python. Scrivi codice senza bug. Aggiungendo alcuni decoratori al tuo codice, ottieni gratuitamente test, analisi statica, verifica formale e molto altro.
Dlint — Uno strumento per garantire che il codice Python sia sicuro.
Dodgy ⚠️ — Dodgy è uno strumento molto basilare da eseguire sul tuo codebase per cercare valori dall'aspetto "dodgy". È una serie di semplici espressioni regolari progettate per rilevare cose come checkin accidentali di diff SCM, o password o chiavi segrete codificate direttamente nei file.
ENRE-py ⚠️ — ENRE (ENtity Relationship Extractor) è uno strumento per l'estrazione di dipendenze o relazioni tra entità di codice dal codice sorgente. ENRE-py è un ENtity Relationship Extractor per Python basato sui Python Language Services della Standard Library.
fixit — Un framework per creare regole di lint e relative correzioni automatiche per il codice sorgente.
flake8 — Un wrapper attorno a pyflakes, pycodestyle e mccabe.
flakeheaven ⚠️ — flakeheaven è un linter python costruito attorno a flake8 per abilitare una configurazione toml ereditabile e complessa.
Griffe — Firme per interi programmi Python. Estrai la struttura, la cornice, lo scheletro del tuo progetto, per generare documentazione API o trovare breaking change nella tua API.
InspectorTiger ⚠️ — IT, Inspector Tiger, è un moderno strumento / framework di code review per python. Viene fornito con una serie di handler predefiniti che ti avvisano di miglioramenti e possibili bug. Oltre a questi handler, puoi scrivere i tuoi o usare quelli della community.
jedi — Libreria di autocompletamento/analisi statica per Python.
linty fresh ⚠️ — Analizza gli errori di lint e li segnala a Github come commenti su una pull request.
mbake — mbake è un formatter e linter per Makefile. Ci sono voluti solo 50 anni!
mccabe — Verifica la complessità di McCabe.
multilint ⚠️ — Un wrapper attorno a flake8, isort e modernize.
mypy — Un type checker statico che mira a combinare i vantaggi del duck typing e della tipizzazione statica, frequentemente usato con MonkeyType.- pip-audit — Strumento per scansionare i pacchetti Python alla ricerca di vulnerabilità note. Sviluppato dalla Python Packaging Authority (PyPA) e supportato da Trail of Bits e Google. Scansiona ambienti Python e file requirements per identificare pacchetti vulnerabili e suggerisce rimedi. Supporta GitHub Actions, hook pre-commit e diverse integrazioni con servizi di vulnerabilità.
prospector — Un wrapper attorno a pylint, pep8, mccabe e altri.
py-find-injection ⚠️ — Trova vulnerabilità di SQL injection nel codice Python.
pyanalyze — Uno strumento per rilevare programmaticamente errori comuni nel codice Python, come riferimenti a variabili non definite ed errori di tipo. Può essere esteso per aggiungere regole aggiuntive ed eseguire controlli specifici per particolari funzioni.
pycodestyle — (Precedentemente pep8) Verifica il codice Python rispetto ad alcune delle convenzioni di stile del PEP 8.
pydocstyle ⚠️ — Verifica la conformità con le convenzioni dei docstring Python.
pyflakes ⚠️ — Verifica la presenza di errori nei file sorgente Python.
pylint — Cerca errori di programmazione, aiuta a far rispettare uno standard di codifica e individua alcuni code smell. Include inoltre pyreverse (un generatore di diagrammi UML) e symilar (un verificatore di similarità).
pylyzers ⚠️ — Un analizzatore statico di codice / language server per Python, scritto in Rust, focalizzato sul type checking e su un output leggibile.
Pyra — Pyra è un linter/analizzatore statico di alto livello per applicazioni di data science scritte in Python, che aiuta gli sviluppatori a identificare potenziali problemi nel loro codice di data science scritto in Python, come estensione di Lyra.
pyre-check — Un type checker veloce e scalabile per grandi codebase Python. Pyre-check è stato sostituito da Pyrefly, la sua iterazione successiva.
pyrefly — Un type checker veloce e incrementale e language server per Python, che fornisce funzionalità IDE come navigazione del codice, evidenziazione semantica e completamento del codice.
pyright — Type checker statico per Python, creato per colmare lacune in strumenti esistenti come mypy.
pyroma — Valuta quanto bene un progetto Python rispetta le best practice dell'ecosistema di packaging Python ed elenca i problemi che potrebbero essere migliorati.
Pysa — Uno strumento basato su pyre-check di Facebook per identificare potenziali problemi di sicurezza nel codice Python identificati con l'analisi di taint.
pyscn — Analizzatore intelligente della qualità del codice Python con analisi della complessità ciclomatica basata su CFG, rilevamento di codice morto, rilevamento di cloni (Tipo 1-4) e metriche di accoppiamento. Utilizza tree-sitter per il parsing. Scritto in Go.
PyT - Python Taint ⚠️ — Uno strumento di analisi statica per rilevare vulnerabilità di sicurezza nelle applicazioni web Python.
pytype — Un analizzatore statico di tipi per il codice Python.
pyupgrade — Uno strumento (e hook pre-commit) per aggiornare automaticamente la sintassi per versioni più recenti del linguaggio.
QuantifiedCode ⚠️ — Revisione e riparazione automatica del codice. Ti aiuta a tenere traccia di problemi e metriche nei tuoi progetti software e può essere facilmente esteso per supportare nuovi tipi di analisi.
radon ⚠️ — Uno strumento Python che calcola varie metriche dal codice sorgente.
refurb — Uno strumento per rinnovare e modernizzare le codebase Python. Refurb è fortemente ispirato a clippy, il linter integrato per Rust.
ruff — Linter Python veloce, scritto in Rust. 10-100x più veloce dei linter esistenti. Compatibile con Python 3.10. Supporta il file watcher.
Safety — Scanner di vulnerabilità delle dipendenze Python progettato per migliorare la sicurezza della supply chain software rilevando pacchetti con vulnerabilità note. Verifica le dipendenze Python rispetto a un database di vulnerabilità di sicurezza note e fornisce report dettagliati. Supporta l'integrazione CI/CD e molteplici formati di output.
ty — Un type checker Python estremamente veloce scritto in Rust.
unimport — Un linter, formatter per trovare e rimuovere istruzioni di import non utilizzate.
vulture — Trova classi, funzioni e variabili non utilizzate nel codice Python.
wemake-python-styleguide — Il linter Python più severo e più opinionato di sempre.
wily — Uno strumento da riga di comando per archiviare, esplorare e rappresentare graficamente la complessità del codice sorgente Python.
xenon ⚠️ — Monitora la complessità del codice usando radon.
yapf ⚠️ — Un formatter per file Python creato da Google YAPF segue una metodologia distintiva, originata dallo strumento 'clang-format' creato da Daniel Jasper. Essenzialmente, il programma riformula il codice nella formattazione più adatta che rispetta la style guide, anche se il codice originale già segue la style guide. Questo concetto è simile allo strumento 'gofmt' del linguaggio di programmazione Go, che mira a porre fine ai dibattiti sulla formattazione facendo passare l'intera codebase di un progetto attraverso YAPF ogni volta che vengono apportate modifiche, mantenendo così uno stile coerente in tutto il progetto ed eliminando la necessità di discutere dello stile in ogni code review.
CodeDepends — Analisi statica del codice per R.
cyclocomp ⚠️ — Quantifica la complessità ciclomatica di funzioni / espressioni R.
flowR — Un program slicer e analizzatore di dataflow per il linguaggio di programmazione R. Il suo slicer ti permette di ridurre un programma complicato solo alle parti correlate a un compito specifico (ad esempio, la generazione di un singolo o di una collezione di grafici, un test di significatività, ...). L'analisi del dataflow ti fornisce una vista dettagliata sulla semantica del codice R che può migliorare notevolmente altre analisi. Per usare flowR, dai un'occhiata all'estensione Visual Studio Code, all'Addin RStudio, all'immagine Docker o al pacchetto R.
goodpractice — Analizza il codice sorgente dei pacchetti R e fornisce raccomandazioni sulle best practice.
lintr — Analisi statica del codice per R.
R Language Server — Fornisce completamento del codice, refactoring, folding, diagnostica (con lintr) e altro per R.
rco ⚠️ — Ottimizzatore di prestazioni per il codice R (con GUI).
styler — Formattazione di file di codice sorgente R e pretty-printing del codice R.
Active Record Doctor — Identifica problemi del database prima che arrivino in produzione.
brakeman — Uno scanner di vulnerabilità di sicurezza con analisi statica per applicazioni Ruby on Rails.
Bullet — Aiuta a eliminare query N+1 e eager loading non utilizzato.
bundler-audit — Verifica Gemfile.lock per gemme con vulnerabilità di sicurezza segnalate nel Ruby Advisory Database.
cane ⚠️ — Verifica delle soglie di qualità del codice come parte della tua build.
Churn ⚠️ — Un progetto per fornire il churn di file, classi e metodi per un progetto per un dato checkin. Nel tempo lo strumento somma la storia dei churn per dare il numero di volte in cui un file, una classe o un metodo cambia durante la vita di un progetto.
DatabaseConsistency — Lo strumento per evitare vari problemi dovuti a incoerenze e inefficienze tra uno schema di database e i modelli applicativi.
dawnscanner ⚠️ — Uno scanner di vulnerabilità di sicurezza con analisi statica per applicazioni web scritte in ruby. Supporta i framework Sinatra, Padrino e Ruby on Rails.
ERB Lint — Esegue il lint dei tuoi file ERB o HTML
ERB::Formatter ⚠️ — Formatta i file ERB con velocità e precisione.
Fasterer ⚠️ — Verificatore di idiomi Ruby comuni.
flay — Flay analizza il codice per similarità strutturali.
flog — Flog riporta il codice più torturato in un pain report facile da leggere. Più alto è il punteggio, più il codice è sofferente.
Fukuzatsu ⚠️ — Uno strumento per misurare la complessità del codice nei file di classe Ruby. La sua analisi genera punteggi basati su algoritmi di complessità ciclomatica senza "opinioni" aggiunte.
htmlbeautifier ⚠️ — Un normalizzatore/beautifier per HTML che comprende anche Ruby incorporato. Ideale per riordinare i template Rails.
laser ⚠️ — Analisi statica e linter di stile per il codice Ruby.
MetricFu ⚠️ — MetricFu è un insieme di strumenti per fornire report che mostrano quali parti del tuo codice potrebbero necessitare di lavoro extra.
pelusa ⚠️ — Strumento di analisi statica di tipo Lint per migliorare il tuo codice Ruby OO.
quality ⚠️ — Esegue controlli di qualità sul tuo codice usando strumenti della community e assicura che i tuoi numeri non peggiorino nel tempo.
Querly ⚠️ — Strumento di verifica basato su pattern per Ruby.
Railroader ⚠️ — Uno scanner di vulnerabilità di sicurezza con analisi statica open source per applicazioni Ruby on Rails.
rails_best_practices — Uno strumento di metriche del codice per progetti Rails
reek — Rilevatore di code smell per Ruby.
Roodi ⚠️ — Roodi sta per Ruby Object Oriented Design Inferometer. Analizza il tuo codice Ruby e ti avverte dei problemi di design che hai in base ai controlli che ha configurato.
RuboCop — Un analizzatore statico di codice Ruby, basato sulla style guide Ruby della community.
Rubrowser ⚠️ — Generatore interattivo di grafi di dipendenze tra classi Ruby.
ruby-lint ⚠️ — Analisi statica del codice per Ruby.
rubycritic — Un reporter di qualità del codice Ruby.
rufo — Un formatter ruby opinionato, pensato per essere usato da riga di comando come plugin di editor di testo, per formattare automaticamente i file al salvataggio o su richiesta.
Saikuro ⚠️ — Un analizzatore di complessità ciclomatica per Ruby.
SandiMeter ⚠️ — Strumento di analisi statica per verificare il codice Ruby rispetto alle regole di Sandi Metz.
Skunk — Un calcolatore di SkunkScore per il codice Ruby -- Trova il codice più complicato senza copertura di test!
Sorbet — Un type checker veloce e potente progettato per Ruby.
Standard Ruby — Ruby Style Guide, con linter e correttore automatico del codice
Steep — Gradual Typing per Ruby.
Traceroute ⚠️ — Una gemma rake task che ti aiuta a trovare le route e le azioni dei controller non utilizzate per la tua app Rails 3+.
C2Rust — C2Rust ti aiuta a migrare codice conforme a C99 verso Rust. Il traduttore (o transpiler) produce codice Rust unsafe che rispecchia fedelmente il codice C di input.
cargo udeps — Trova dipendenze non utilizzate in Cargo.toml. Stampa una riga "unused crates" elencando le crate, oppure stampa una riga che dice che nessuna crate era inutilizzata.
cargo-audit — Verifica Cargo.lock per crate con vulnerabilità di sicurezza segnalate al RustSec Advisory Database.
cargo-bloat ⚠️ — Scopri cosa occupa la maggior parte dello spazio nel tuo eseguibile. Supporta binari ELF (Linux, BSD), Mach-O (macOS) e PE (Windows).
cargo-breaking ⚠️ — cargo-breaking confronta l'API pubblica di una crate tra due branch diversi, mostra cosa è cambiato e suggerisce la prossima versione secondo il semver.
cargo-call-stack ⚠️ — Analisi statica dello stack dell'intero programma. Lo strumento produce il grafo completo delle chiamate di un programma come file dot.
cargo-deny — Un plugin cargo per il linting delle tue dipendenze. Può essere usato sia come strumento da riga di comando, come crate Rust, o come Github action per la CI. Verifica informazioni valide sulla licenza, crate duplicate, vulnerabilità di sicurezza e altro.
cargo-expand — Sottocomando Cargo per mostrare il risultato dell'espansione delle macro e dell'espansione di #[derive] applicata alla crate corrente. Questo è un wrapper attorno a un comando del compilatore più verboso.
cargo-geiger — Un plugin cargo per analizzare l'uso di codice Rust unsafe. Fornisce output statistico per agevolare l'audit di sicurezza
cargo-inspect ⚠️ — Ispeziona il codice Rust senza zucchero sintattico per vedere cosa fa il compilatore dietro le quinte.
cargo-semver-checks — Scansiona le release della tua crate Rust alla ricerca di violazioni del semver. Può essere usato direttamente tramite la CLI, come GitHub Action in CI, o tramite release manager come release-plz. Ha trovato violazioni del semver in più di 1 su 6 delle 1000 crate più scaricate su crates.io.
cargo-show-asm — Sottocomando cargo che mostra l'assembly, l'LLVM-IR e il MIR generati per il codice Rust
cargo-spellcheck — Verifica tutta la tua documentazione per errori di ortografia e grammatica con hunspell (pronto) e languagetool (anteprima)
cargo-unused-features ⚠️ — Trova potenziali feature flag abilitate non utilizzate e rimuovile. Puoi generare un semplice report HTML dal json per rendere più facile ispezionare i risultati. Rimuove una feature di una dipendenza e poi compila il progetto per vedere se compila ancora. Se compila, la feature flag può probabilmente essere rimossa, ma può essere un falso positivo.
clippy — Un linter di codice per individuare errori comuni e migliorare il tuo codice Rust.
diff.rs — Applicazione web (WASM) per renderizzare un diff tra versioni di crate Rust.
dylint — Uno strumento per eseguire lint Rust da librerie dinamiche. Dylint rende facile per gli sviluppatori mantenere le proprie collezioni personali di lint.
electrolysis ⚠️ — Uno strumento per verificare formalmente programmi Rust transpilandoli in definizioni nel theorem prover Lean.
herbie ⚠️ — Aggiunge avvisi o errori alla tua crate quando usi un'espressione in virgola mobile numericamente instabile.
kani — Il Kani Rust Verifier è un model checker bit-precise per Rust. Kani è particolarmente utile per verificare blocchi di codice unsafe in Rust, dove i "superpoteri unsafe" non sono controllati dal compilatore. Kani verifica:
linter-rust ⚠️ — Linting dei tuoi file Rust in Atom, usando rustc e cargo.
lockbud — Rileva staticamente bug di deadlock in Rust. Attualmente rileva due tipi comuni di bug di deadlock: doublelock e lock in ordine conflittuale. Stamperà i bug in formato JSON insieme alla posizione nel codice sorgente e a una spiegazione di ciascun bug.
MIRAI ⚠️ — Un interprete astratto che opera sul mid-level intermediate language di Rust e fornisce avvisi basati sull'analisi di taint.
prae ⚠️ — Fornisce una comoda macro che ti permette di generare wrapper di tipo che promettono di rispettare sempre invarianti arbitrarie che hai specificato.
Prusti ⚠️ — Un verificatore statico per Rust, basato sull'infrastruttura di verifica Viper. Per impostazione predefinita Prusti verifica l'assenza di panic dimostrando che istruzioni come unreachable!() e panic!() sono irraggiungibili.
Rudra — Rilevamento di sicurezza della memoria e comportamento indefinito in Rust. È in grado di analizzare singoli pacchetti Rust così come tutti i pacchetti su crates.io.
Rust Language Server ⚠️ — Supporta funzionalità come 'goto definition', ricerca di simboli, riformattazione e completamento del codice, e abilita rinomina e refactoring.
rust-analyzer — Supporta funzionalità come 'goto definition', inferenza di tipo, ricerca di simboli, riformattazione e completamento del codice, e abilita rinomina e refactoring.
rust-audit — Verifica binari Rust per bug noti o vulnerabilità di sicurezza. Funziona incorporando dati sull'albero delle dipendenze (Cargo.lock) in formato JSON in una sezione dedicata del linker dell'eseguibile compilato.
rustfix ⚠️ — Legge e applica i suggerimenti fatti da rustc (e lint di terze parti, come quelli offerti da clippy).
rustfmt — Uno strumento per formattare il codice Rust secondo le linee guida di stile.
RustViz — RustViz è uno strumento che genera visualizzazioni da semplici programmi Rust per assistere gli utenti nella migliore comprensione del meccanismo di Lifetime e Borrowing di Rust. Genera file SVG con indicatori grafici che si integrano con mdbook per renderizzare visualizzazioni del data-flow nei programmi Rust.
TangleGuard ©️ — Ti aiuta a comprendere e mantenere un'architettura software scalabile. Per farlo, genera un grafo di dipendenze interattivo e annidato dal codice sorgente. Puoi scegliere il livello di dettaglio e ottenere la porzione della tua codebase che ti interessa.
warnalyzer ⚠️ — Mostra il codice non utilizzato da progetti Rust multi-crate
Bytebase — Piattaforma Database DevSecOps con un motore SQL Review integrato che esegue il lint di migrazioni di schema e query rispetto a oltre 100 regole configurabili — convenzioni di denominazione, anti-pattern e controlli di sicurezza — su MySQL, PostgreSQL, Oracle, SQL Server, Snowflake e altro.
dbcritic — dbcritic trova problemi in uno schema di database, come un vincolo di chiave primaria mancante in una tabella.
holistic — Più di 1.300 regole per analizzare query SQL. Prende una definizione di schema SQL e il codice sorgente delle query per generare raccomandazioni di miglioramento. Rileva code smell, indici non utilizzati, tabelle non utilizzate, view, viste materializzate e altro.- pgspot — Individua vulnerabilità negli script delle estensioni PostgreSQL. Trova utilizzi non sicuri di search_path e creazioni di oggetti non sicure negli script delle estensioni PostgreSQL o in qualsiasi altro codice SQL PostgreSQL.
sleek ⚠️ — Sleek è uno strumento CLI per formattare SQL. Ti aiuta a mantenere uno stile coerente in tutto il tuo codice SQL, migliorando la leggibilità e la produttività. Il lavoro pesante è svolto dal crate sqlformat.
sqlcheck ⚠️ — Identifica automaticamente gli anti-pattern nelle query SQL.
SQLFluff — Linter e formattatore SQL multi-dialetto.
sqlint — Semplice linter SQL.
squawk — Linter per PostgreSQL, focalizzato sulle migrazioni. Previene downtime imprevisti causati dalle migrazioni del database e incoraggia le best practice relative agli schemi Postgres e SQL.
tsqllint — Linter specifico per T-SQL.
TSqlRules ⚠️ — Regole di analisi statica del codice TSQL per SQL Server.
Visual Expert ©️ — Analisi del codice per PowerBuilder, Oracle e SQL Server Esplora, analizza e documenta il codice
linter ⚠️ — Linter è un plugin del compilatore per l'analisi statica di Scala che aggiunge controlli in fase di compilazione per vari possibili bug, inefficienze e problemi di stile.
Scalastyle ⚠️ — Scalastyle esamina il tuo codice Scala e indica potenziali problemi.
scapegoat — Plugin del compilatore Scala per l'analisi statica del codice.
WartRemover — Uno strumento flessibile di linting per il codice Scala.
bashate ⚠️ — Applicazione dello stile del codice per programmi bash. Il formato di output mira a seguire il formato di output predefinito di pycodestyle (pep8).
i-Code CNES for Shell ⚠️ — Uno strumento open source di analisi statica del codice per Shell e Fortran (77 e 90).
kmdr ⚠️ — Strumento CLI per imparare i comandi dal tuo terminale. kmdr fornisce una suddivisione dei comandi con ogni attributo spiegato.
sh — Un parser, formattatore e interprete di shell con supporto bash; include shfmt
shellcheck — ShellCheck, uno strumento di analisi statica che fornisce avvisi e suggerimenti per script bash/sh.
shellharden — Un evidenziatore di sintassi e uno strumento per semiautomatizzare la riscrittura degli script in conformità con ShellCheck, principalmente focalizzato sul quoting.
SwiftFormat — Una libreria e uno strumento di formattazione da riga di comando per riformattare il codice Swift.
SwiftLint — Uno strumento per applicare lo stile e le convenzioni di Swift.
Tailor ⚠️ — Uno strumento di analisi statica e lint per il codice sorgente scritto nel linguaggio di programmazione Swift di Apple.
Frink — Un programma di formattazione e controllo statico per Tcl (può abbellire il programma, minimizzarlo, offuscarlo o semplicemente verificarne la correttezza).
Nagelfar — Un controllo statico della sintassi per Tcl.
tclchecker — Un modulo di analisi statica della sintassi (come parte di TDK).
Angular ESLint — Linter per progetti Angular
Codelyzer ⚠️ — Un insieme di regole tslint per l'analisi statica del codice di progetti Angular 2 TypeScript.
ENRE-ts ⚠️ — ENRE (ENtity Relationship Extractor) è uno strumento per l'estrazione delle dipendenze o relazioni tra entità del codice dal codice sorgente. ENRE-ts è un ENtity Relationship Extractor per ECMAScript e TypeScript basato su @babel/parser.
fta — Analisi statica basata su Rust per progetti TypeScript
stc ⚠️ — Controllore di tipi TypeScript veloce scritto in Rust
tslint ⚠️ — TSLint è stato deprecato dal 2019. Si prega di consultare questa issue per maggiori dettagli. typescript-eslint è ora la tua migliore opzione per il linting di TypeScript.
TSLint è uno strumento di analisi statica estensibile che controlla il codice TypeScript per errori di leggibilità, manutenibilità e funzionalità. È ampiamente supportato nei moderni editor e sistemi di build e può essere personalizzato con le tue regole di lint, configurazioni e formattatori.
tslint-clean-code ⚠️ — Un insieme di regole TSLint ispirate al manuale Clean Code.
tslint-microsoft-contrib ⚠️ — Un insieme di regole tslint per l'analisi statica del codice di progetti TypeScript mantenuto da Microsoft.
TypeScript Call Graph — CLI per generare un grafo interattivo di funzioni e chiamate dai tuoi file TypeScript
TypeScript ESLint — Estensione del linguaggio TypeScript per eslint.
zod — Validazione di schemi TypeScript-first con inferenza di tipo statica. L'obiettivo è eliminare le dichiarazioni di tipo duplicate. Con Zod, dichiari un validatore una volta e Zod inferirà automaticamente il tipo TypeScript statico. È facile comporre tipi più semplici in strutture dati complesse.
Icarus Verilog ⚠️ — Uno strumento di simulazione e sintesi Verilog che opera compilando il codice sorgente scritto in IEEE-1364 Verilog in un formato target
svls — Un'implementazione del Language Server Protocol per Verilog e SystemVerilog, incluse le capacità di linting.
verible-linter-action ⚠️ — Linting automatico di SystemVerilog nelle github actions con l'aiuto di Verible Utilizzato per il linting di file sorgente Verilog e SystemVerilog e per commentare automaticamente le righe di codice errate nelle Pull Request.
Verilator — Uno strumento che converte Verilog in un modello comportamentale cycle-accurate in C++ o SystemC. Esegue controlli di linting sulla qualità del codice.
vscode-verilog-hdl-support — Supporto Verilog HDL/SystemVerilog/Bluespec SystemVerilog per VS Code. Fornisce evidenziazione della sintassi e supporto al Linting da Icarus Verilog, Vivado Logical Simulation, Modelsim e Verilator
Twiggy — Analizza il grafo delle chiamate di un binario per profilare la dimensione del codice. L'obiettivo è ridurre la dimensione del binario wasm.
wasm-language-tools — WebAssembly Language Tools mira a fornire e migliorare l'esperienza di editing del WebAssembly Text Format. Fornisce inoltre un formattatore out-of-the-box (noto anche come pretty printer) per il WebAssembly Text Format.
ale — Asynchronous Lint Engine per Vim e NeoVim con supporto per molti linguaggi.
Android Studio — Basato su IntelliJ IDEA, e viene fornito con strumenti per Android incluso Android Lint.
AppChecker ©️ — Analisi statica per C/C++/C#, PHP e Java.
Application Inspector ©️ — Analisi statica del codice commerciale che genera exploit per verificare le vulnerabilità.
ApplicationInspector — Crea report di oltre 400 pattern di regole per il rilevamento di funzionalità (ad es. l'uso di crittografia o controllo di versione nelle app).
ArchUnit — Testa unitariamente la tua architettura Java o Kotlin.
AST Metrics — Analizzatore di manutenibilità multi-linguaggio. Calcola la complessità ciclomatica e cognitiva, il volume di Halstead, l'accoppiamento afferente/efferente e l'indice di manutenibilità, rileva comunità nel grafo delle dipendenze e genera un report HTML esplorabile più output JSON, Markdown, SARIF e OpenMetrics. Binario singolo veloce senza dipendenze runtime, e un server MCP integrato così gli agenti AI possono interrogare la struttura del codebase prima del refactoring.
ast-grep — ast-grep è un potente strumento progettato per gestire il codice su larga scala utilizzando Abstract Syntax Trees (AST). Pensalo come un ibrido di grep, eslint e codemod, con la capacità di cercare, fare linting e riscrivere il codice in base alla sua struttura piuttosto che al testo semplice. Supporta più linguaggi ed è progettato per essere estensibile, permettendoti di registrare linguaggi personalizzati.
Atom-Beautify ⚠️ — Abbellisci HTML, CSS, JavaScript, PHP, Python, Ruby, Java, C, C++, C#, Objective-C, CoffeeScript, TypeScript, Coldfusion, SQL e altro nell'editor Atom.
autocorrect — Un linter e formattatore per aiutarti a migliorare la scrittura, correggere spazi, parole, punteggiatura tra CJK (cinese, giapponese, coreano).
Axivion Bauhaus Suite ©️ — Individua posizioni di codice soggette a errori, violazioni di stile, codice clonato o morto, dipendenze cicliche e altro per C/C++, C#/.NET, Java e Ada 83/Ada 95.
Bearer — Strumento open-source di analisi statica del codice per scoprire, filtrare e prioritizzare rischi di sicurezza e vulnerabilità che portano a esposizioni di dati sensibili (PII, PHI, PD). Altamente configurabile e facilmente estensibile, costruito per team di sicurezza e ingegneria.
Better Code Hub ©️ — Better Code Hub verifica il tuo codebase GitHub rispetto a 10 linee guida ingegneristiche ideate dall'autorità nella qualità del software, Software Improvement Group.
Betterscan CE ⚠️ — Verifica il tuo codice e la tua infrastruttura (vari repository Git supportati, stack cloud, CLI, piattaforma Web Interface, integrazioni disponibili) per problemi di sicurezza e qualità. Scansione del codice/SAST/Linting utilizzando molti strumenti/Scanner deduplicati con un unico Report (AI opzionale).
biome — Una toolchain per progetti web, mirata a fornire funzionalità per mantenerli. Biome formatta e fa il linting del codice in una frazione di secondo. È il successore di Rome. È progettato per sostituire eventualmente Biome è progettato per sostituire eventualmente Babel, ESLint, webpack, Prettier, Jest e altri.
BlockWatch — Un linter agnostico rispetto al linguaggio che mantiene sincronizzati codice, documentazione e configurazione e applica rigide regole di formattazione e validazione.
BugProve ⚠️ ©️ — BugProve è una piattaforma di analisi del firmware che presenta sia tecniche di analisi statica che dinamica per scoprire corruzioni di memoria, injection di comandi e altre classi o debolezze comuni nel codice binario. Rileva anche dipendenze vulnerabili, parametri crittografici deboli, misconfigurazioni e altro.
callGraph ⚠️ — Genera staticamente un'immagine del grafo delle chiamate e la visualizza sullo schermo.
CAST Highlight ©️ — Analisi statica del codice commerciale che viene eseguita localmente, ma carica i risultati sul suo cloud per la presentazione.
Checkmarx CxSAST ©️ — Analisi statica del codice commerciale che non richiede pre-compilazione.
ClassGraph — Uno scanner di classpath e module path per interrogare o visualizzare metadati di classi o relazioni tra classi.
Clayton ©️ — Revisioni del codice basate sull'AI per Salesforce. Proteggi i tuoi sviluppi, applica le best practice e controlla il tuo debito tecnico in tempo reale.
coala ⚠️ — Framework indipendente dal linguaggio per creare analisi del codice - supporta oltre 60 linguaggi per impostazione predefinita.
Cobra ©️ — Analizzatore strutturale del codice sorgente del Jet Propulsion Laboratory della NASA.
Codacy ©️ — Analisi del codice per spedire codice migliore, più velocemente.
Code Intelligence ©️ — Piattaforma DevSecOps agnostica rispetto a CI/CD che combina motori di fuzzing leader del settore per trovare bug e visualizzare la copertura del codice
Code Pathfinder — Analisi statica del codice open source per team di sicurezza con analisi del taint dataflow inter-file. Costruito per trovare vulnerabilità, ricerca strutturale avanzata, derivare insight e supporta il server MCP.
Code-Graph-RAG — Costruisce knowledge graph da codebase multi-linguaggio utilizzando il parsing AST di Tree-sitter e li memorizza in Memgraph. Supporta 11 linguaggi di programmazione con uno schema di grafo unificato e abilita l'interrogazione in linguaggio naturale e la modifica della struttura e delle relazioni del codice. Funziona come server MCP per l'integrazione con assistenti AI.
Codeac ©️ — Strumento automatizzato di revisione del codice che si integra con GitHub, Bitbucket e GitLab (anche self-hosted). Disponibile per JavaScript, TypeScript, Python, Ruby, Go, PHP, Java, Docker e altro. (open-source gratuito)
codeburner — Fornisce un'interfaccia unificata per ordinare e agire sui problemi che trova.
CodeFactor ©️ — Analisi automatizzata del codice per repository su GitHub o BitBucket.
CodeFlow ©️ — Strumento automatizzato di analisi del codice per gestire la profondità tecnica. Si integra con Bitbucket e Gitlab. (gratuito per progetti Open Source)
Codemodder ⚠️ — Codemodder è un framework pluggable per costruire codemod espressivi. Usa Codemodder quando hai bisogno di più di un linter o di uno strumento di formattazione del codice. Usalo per correggere problemi di sicurezza non banali e altri problemi di qualità del codice.
codeql — Analisi profonda del codice - query semantiche e dataflow per diversi linguaggi con supporto al plugin VSCode.
CodeQue — Ecosistema per il matching strutturale di codice JavaScript e TypeScript. Offre uno strumento di ricerca che comprende la struttura del codice. Disponibile come strumento CLI ed estensione per Visual Studio Code. Aiuta a cercare il codice più velocemente e più accuratamente rendendo il tuo flusso di lavoro più efficace. Presto offrirà un plugin ESLint per creare le tue regole in pochi minuti per aiutare ad assicurare la qualità del codebase.
CodeRush ©️ — Strumenti di creazione, debug, navigazione, refactoring, analisi e visualizzazione del codice che utilizzano il motore Roslyn in Visual Studio 2015 e versioni successive.
CodeScan ©️ — Qualità e sicurezza del codice per sviluppatori Salesforce. Realizzato esclusivamente per la piattaforma Salesforce, le soluzioni di analisi del codice di CodeScan ti forniscono totale visibilità sulla salute del tuo codice.
CodeScene ©️ — CodeScene è uno strumento di visualizzazione della qualità per il software. Prioritizza il debito tecnico, rileva i rischi di consegna e misura gli aspetti organizzativi. Completamente automatizzato.
CodeSee ©️ — CodeSee mappa e automatizza i servizi, le directory, le dipendenze dei file e le modifiche al codice della tua app. È come Google Map, ma per il codice.t
CodeSonar from GrammaTech ©️ — Analisi statica avanzata, a livello di intero programma, con percorsi profondi, di C, C++, Java e C# con spiegazioni facili da comprendere e visualizzazione del codice e dei percorsi.
Codety ⚠️ ©️ — Codety Scanner è uno scanner completo di codice sorgente che incorpora oltre 5000 regole di analisi statica del codice, che mirano a rilevare problemi di codice per oltre 20 linguaggi di programmazione e strumenti IaC.
Codiga ©️ — Piattaforma automatizzata di revisione del codice e gestione del debito tecnico che supporta oltre 12 linguaggi.
Corgea ©️ — Corgea è uno scanner SAST basato sull'AI che aiuta gli sviluppatori a trovare e correggere codice non sicuro. Trova difetti di logica di business, autenticazione compromessa, vulnerabilità API e altro con pochi falsi positivi. Inoltre, scrive automaticamente correzioni di sicurezza per l'approvazione. Corgea si integra con GitHub, GitLab, Azure DevOps, IDE e CLI. È gratuito da provare.
Corrode ⚠️ — Traduzione semi-automatica da C a Rust. Potrebbe rivelare bug nell'implementazione originale mostrando avvisi ed errori del compilatore Rust. Sostituito da C2Rust.
Coverity ©️ — Synopsys Coverity supporta 20 linguaggi e oltre 70 framework tra cui Ruby on rails, Scala, PHP, Python, JavaScript, TypeScript, Java, Fortran, C, C++, C#, VB.NET.
cpp-linter-action — Una Github Action per il linting del codice C/C++ che integra clang-tidy e clang-format per raccogliere feedback fornito sotto forma di commenti nei thread e/o annotazioni.
cqc ⚠️ — Controlla la qualità del tuo codice per file js, jsx, vue, css, less, scss, sass e styl.
DeepCode ⚠️ ©️ — DeepCode è stata acquisita da Snyk ed è ora Snyk Code.
DeepSource ©️ — Analisi statica approfondita per trovare problemi in verticali di rischi di bug, sicurezza, anti-pattern, performance, documentazione e stile. Integrazioni native con GitHub, GitLab e Bitbucket. Meno del 5% di falsi positivi.
deleaker ©️ — Deleaker è uno strumento di rilevamento di memory leak per C++, .NET e Delphi, che si integra con Visual Studio, Qt Creator e RAD Studio o viene eseguito come applicazione standalone. Aiuta gli sviluppatori a trovare e correggere memory leak, GDI e handle leak in modo efficiente.
Depends — Analizza le dipendenze complessive degli elementi di codice per Java, C/C++, Ruby.
DerScanner ©️ — Piattaforma multi-linguaggio di Static Application Security Testing (SAST) che rileva vulnerabilità critiche, inclusi segreti hardcoded, crittografia debole, backdoor, SQL injection, configurazioni non sicure, ecc.
DevSkim — Strumento di analisi statica basato su regex per Visual Studio, VS Code e Sublime Text - C/C++, C#, PHP, ASP, Python, Ruby, Java e altri.
diesel-guard — Linter per pattern di migrazione Postgres pericolosi in Diesel e SQLx. Previene il downtime causato da modifiche di schema non sicure.
dotnet-format — Un formattatore di codice per .NET. Le preferenze verranno lette da un file .editorconfig, se presente, altrimenti verrà utilizzato un set predefinito di preferenze. Al momento dotnet-format è in grado di formattare progetti C# e Visual Basic con un sottoinsieme di opzioni .editorconfig supportate.
Embold ©️ — Piattaforma intelligente di analisi del software che identifica problemi di design, problemi di codice, duplicazione e metriche. Supporta Java, C, C++, C#, JavaScript, TypeScript, Python, Go, Kotlin e altro.
emerge — Emerge è un visualizzatore di codice sorgente e dipendenze che può essere utilizzato per raccogliere informazioni sulla struttura del codice sorgente, metriche, dipendenze e complessità dei progetti software. Dopo aver scansionato il codice sorgente di un progetto ti fornisce un'interfaccia web interattiva per esplorare e analizzare il tuo progetto utilizzando strutture a grafo.
Enforster AI ©️ — Enforster AI esegue Contextual Code Security SAST, sfruttando LLM e intelligenza artificiale per ridurre e arricchire il rilevamento di difetti logici, segreti, fughe di dati, supply chain e vulnerabilità tecniche.- ESLint — Un linter estensibile per JS, conforme allo standard ECMAScript.
ezno — Un compilatore JavaScript e un type checker TypeScript scritto in Rust con particolare attenzione all'analisi statica e alle prestazioni a runtime. Il type checker di Ezno è costruito da zero. Il checker è completamente compatibile con le annotazioni di tipo TypeScript e può funzionare anche senza alcuna annotazione di tipo.
Fallow — Analisi statica nativa in Rust per JavaScript e TypeScript. Mappa un repository come un unico grafo di dipendenze per trovare codice inutilizzato e problemi strutturali attraverso i confini dei file. Eseguibile da CLI o GitHub Actions, con integrazioni VS Code, LSP, MCP e Node API.
Find Security Bugs — Il plugin SpotBugs per audit di sicurezza di applicazioni web Java e applicazioni Android. (Funziona anche con progetti Kotlin, Groovy e Scala)
Fortify ©️ — Una piattaforma commerciale di analisi statica che supporta la scansione di 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 e XML.
Freeplane Code Explorer — La modalità Code Explorer in Freeplane è progettata per analizzare la struttura e le dipendenze del codice compilato in file di classe JVM. Consente inoltre di visualizzare i risultati dei test ArchUnit direttamente in Freeplane, se Freeplane è in esecuzione e ArchUnit rileva violazioni delle regole durante i test.
Goodcheck — Linter personalizzabile basato su espressioni regolari.
goone ⚠️ — Trova query N+1 (chiamate SQL in un ciclo for) nel codice go
graudit — Grep rough audit - strumento di audit del codice sorgente.
HCL AppScan Source ©️ — Analisi statica del codice commerciale.
Hopper ⚠️ — Uno strumento di analisi statica scritto in scala per linguaggi che girano sulla JVM.
Hound CI — Commenta le violazioni di stile nelle pull request di GitHub. Supporta Coffeescript, Go, HAML, JavaScript, Ruby, SCSS e Swift.
imhotep ⚠️ — Commenta i commit in arrivo nel tuo repository e verifica errori sintattici e avvisi di lint generici.
include-gardener ⚠️ — Un analizzatore statico multi-linguaggio per C/C++/Obj-C/Python/Ruby per creare un grafo (in formato dot o graphml) che mostra tutte le relazioni #include di un dato insieme di file.
Infer — Un analizzatore statico per Java, C e Objective-C
Inkog — Scanner di sicurezza per agenti AI. Rileva vulnerabilità comportamentali (prompt injection, loop infiniti, token bombing, SQL injection tramite LLM) su 11 adattatori di framework tra cui LangChain, CrewAI e pydantic-ai. Esegue l'audit dei server MCP. Mappa i risultati su EU AI Act, OWASP LLM Top 10 e NIST AI RMF.
Joern — Joern è una piattaforma per l'analisi di codice sorgente, bytecode ed eseguibili binari. Genera code property graph (CPG), una rappresentazione a grafo del codice per l'analisi cross-language. I code property graph sono memorizzati in un database a grafo personalizzato. Questo consente di analizzare il codice utilizzando query di ricerca formulate in un linguaggio di query domain-specific basato su Scala. Joern è sviluppato con l'obiettivo di fornire uno strumento utile per la scoperta di vulnerabilità e la ricerca nell'analisi statica dei programmi.
jQAssistant — jQAssistant è una piattaforma di software analytics basata su plugin che consente di scansionare strutture di codice e metadati dai repository in un database a grafo Neo4j. I dati raccolti possono essere utilizzati per esplorazione ad-hoc tramite query, visualizzazione o definizione di regole per la validazione continua dell'architettura.
jscpd — Rilevatore di copia/incolla per codice sorgente di programmazione. Trova blocchi duplicati in oltre 200 formati di file — JavaScript, TypeScript, Python, Java, C#, C/C++, Go, Rust, PHP, Ruby e altri — utilizzando il rilevamento basato su token. Supporta soglie configurabili e pattern di esclusione, integrazione con git blame e reporter per console, HTML, JSON, Markdown, SARIF e badge. Eseguibile tramite CLI, in pipeline CI o come libreria; incluso in MegaLinter e Codacy.
keploy — Keploy è una piattaforma di testing open-source che aiuta gli sviluppatori ad automatizzare e ottimizzare il processo di testing. Fornisce agenti per test API e di integrazione, generando test, mock/stub per API che funzionano davvero. Inoltre, Keploy offre un agente di Unit Testing basato su AI che genera unit test stabili e utili direttamente nelle tue PR di GitHub e in VSCode, aiutando a individuare errori e migliorare la qualità del codice.
Kiuwan ©️ — Identifica e risolve le minacce informatiche in un ambiente collaborativo estremamente veloce, con integrazione senza soluzione di continuità nel tuo SDLC. Python, C\C++, Java, C#, PHP e altri.
Klocwork ©️ — Analisi statica di qualità e sicurezza per C/C++, Java e C#.
LangLint — Piattaforma di traduzione automatizzata per commenti al codice e docstring su oltre 20 tipi di file. Elimina le barriere linguistiche nella collaborazione software internazionale. Supporta oltre 100 coppie di lingue con protezione della sintassi. Si integra in pipeline CI/CD come Ruff. 10-20 volte più veloce con elaborazione concorrente.
LGTM ©️ — Trova vulnerabilità di sicurezza, varianti e problemi critici di qualità del codice utilizzando query CodeQL sul codice sorgente. Revisione automatica del codice nelle PR; gratuito per l'open source. Precedentemente semmle. Supporta repository Git pubblici ospitati su Bitbucket Cloud, GitHub.com, GitLab.com.
lizard — Lizard è un analizzatore estensibile di complessità ciclomatica per molti linguaggi di programmazione tra cui C/C++ (non richiede tutti i file header o gli import Java). Esegue anche il rilevamento di copia/incolla (rilevamento di cloni di codice/rilevamento di duplicati di codice) e molte altre forme di analisi statica del codice. Conta righe di codice senza commenti, CCN (numero di complessità ciclomatica), conteggio dei token delle funzioni, conteggio dei parametri delle funzioni.
Mega-Linter — Mega-Linter può gestire qualsiasi tipo di progetto grazie ai suoi oltre 70 Linter integrati, il suo reporting avanzato, eseguibile su qualsiasi sistema CI o localmente, con installazione e configurazione assistite, in grado di applicare formattazione e correzioni
Mobb ©️ — Mobb è un correttore automatico di vulnerabilità affidabile che mette in sicurezza le applicazioni, riduce i backlog di sicurezza e libera gli sviluppatori per concentrarsi sull'innovazione. Mobb è gratuito per i progetti open-source.
MOPSA — Un analizzatore statico progettato per riutilizzare facilmente domini astratti tra linguaggi molto diversi (come C e Python).
nestjs-doctor — Strumento di analisi statica per applicazioni NestJS. Rileva anti-pattern in ambito sicurezza, prestazioni, correttezza e architettura con oltre 30 regole integrate. Restituisce un punteggio di salute da 0 a 100. Include visualizzazione del grafo dei moduli, grafi delle dipendenze degli endpoint e analisi dello schema del database. CLI ed estensione VS Code.
Neurolint-CLI — Strumento deterministico di trasformazione del codice che utilizza il parsing AST e trasformazioni basate su regole. Corregge automaticamente oltre 50 problemi tra cui violazioni di accessibilità, errori di hydration, migrazioni a React 19/Next.js 16 e aggiornamenti di configurazione. Include un'orchestrazione fail-safe in 5 fasi per garantire zero breaking changes. Specializzato per progetti React, Next.js e TypeScript.
oclint — Uno strumento di analisi statica del codice sorgente per migliorare la qualità e ridurre i difetti per C, C++ e Objective-C.
Offensive 360 ©️ — Sistema commerciale di analisi statica del codice che non richiede la compilazione del codice sorgente o la pre-compilazione.
Offensive360 ©️ — Offensive360 è una piattaforma di sicurezza applicativa che combina SAST (analisi taint/data-flow su oltre 60 linguaggi), DAST, SCA, scansione di app mobile (Android/iOS), analisi di malware/binari e conformità delle licenze. I risultati includono la traccia completa source-to-sink e un esempio di codice sicuro. Si distribuisce come SaaS o come appliance virtuale self-hosted per reti offline/air-gapped. Output SARIF; integrazioni CI/CD (GitHub Actions, GitLab, Jenkins, Azure DevOps) e IDE.
OpenRewrite — OpenRewrite corregge problemi comuni di analisi statica segnalati tramite Sonar e altri strumenti utilizzando un plugin Maven e Gradle o la Moderne CLI.
OpenStaticAnalyzer — OpenStaticAnalyzer è uno strumento di analisi del codice sorgente, in grado di eseguire un'analisi statica approfondita del codice sorgente di sistemi complessi.
oxc — The Oxidation Compiler sta creando una suite di strumenti ad alte prestazioni per il linguaggio JavaScript / TypeScript riscritti in Rust.
parasoft ©️ — Soluzioni automatizzate di software testing per test unitari, API e web UI. Conforme a MISRA, OWASP e altri.
pfff — Strumenti di Facebook per l'analisi del codice, visualizzazioni o trasformazione del sorgente preservando lo stile per molti linguaggi.
Pixee ©️ — Pixeebot trova problemi di sicurezza e qualità del codice nel tuo codice e crea pull request pronte per il merge con le correzioni consigliate.
PMD — Un analizzatore di codice sorgente per Java, Salesforce Apex, Javascript, PLSQL, XML, XSL e altri.
pre-commit — Un framework per gestire e mantenere hook pre-commit multi-linguaggio.
Precaution — Precaution è uno strumento di analisi statica di sicurezza (SAST) progettato per trovare vulnerabilità potenzialmente critiche nel codice sorgente prima della produzione. È disponibile come CLI, GitHub Action e GitHub App.
Prettier — Un formattatore di codice opinionato.
Pronto — Revisione automatica rapida del codice delle tue modifiche. Supporta più di 40 runner per vari linguaggi, tra cui Clang, Elixir, JavaScript, PHP, Ruby e altri.
PT.PM ⚠️ — Un motore per la ricerca di pattern nel codice sorgente, basato su Unified AST o UST. Attualmente sono supportati C#, Java, PHP, PL/SQL, T-SQL e JavaScript. I pattern possono essere descritti all'interno del codice o utilizzando un DSL.
Putout — Trasformatore di codice pluggable e configurabile con supporto integrato per plugin eslint, babel per js, jsx typescript, flow, markdown, yaml e json.
PVS-Studio ©️ — Un'analisi statica (condizionatamente gratuita per FOSS e sviluppatori individuali) di codice C, C++, C# e Java. Per scopi pubblicitari puoi proporre un grande progetto FOSS per l'analisi da parte dei dipendenti PVS. Supporta la mappatura CWE, OWASP ASVS, MISRA, AUTOSAR e gli standard di codifica SEI CERT.
pylama ⚠️ — Strumento di audit del codice per Python e JavaScript. Include pycodestyle, pydocstyle, PyFlakes, Mccabe, Pylint e altri
Qwiet AI ©️ — Identifica le vulnerabilità uniche della tua code base prima che raggiungano la produzione. Sfrutta il Code Property Graph (CPG) per eseguire le sue analisi in modo concorrente in un unico grafo di grafi. Trova automaticamente difetti di logica di business in fase di sviluppo come segreti hardcoded e logic bomb
Refactoring Essentials ⚠️ — L'estensione gratuita per Visual Studio 2015 per refactoring C# e VB.NET, inclusi analizzatori di best practice del codice.
relint — Un linter statico di file che consente di scrivere regole personalizzate utilizzando espressioni regolari (RegEx).
Repowise — Analisi deterministica della salute del codice a zero-LLM. Assegna a ogni file un punteggio da 1 a 10 per rischio di difetti, manutenibilità e prestazioni sulla base di 25 indicatori: complessità di McCabe, coesione LCOM4, god class, rilevamento di cloni Rabin-Karp, entropia delle modifiche e hotspot non testati. Aggiunge un grafo delle dipendenze, rilevamento di codice morto, segnali dalla cronologia git (churn, ownership, co-change) e piani concreti di refactoring consapevoli del grafo. Disponibile come CLI, server MCP ed estensione VS Code per 15 linguaggi.
ReSharper ©️ — Estende Visual Studio con ispezioni del codice in tempo reale per C#, VB.NET, ASP.NET, JavaScript, TypeScript e altre tecnologie.
Rev-dep — Toolkit di analisi e ottimizzazione delle dipendenze per progetti JavaScript e TypeScript moderni. Traccia gli import, identifica dipendenze circolari, trova codice inutilizzato, pulisce i node modules.
RIPS ©️ — Un analizzatore statico di codice sorgente per vulnerabilità in script PHP.
Roslyn Analyzers — Implementazione basata su Roslyn degli analizzatori FxCop.
Roslyn Security Guard ⚠️ — Progetto che si concentra sull'identificazione di potenziali vulnerabilità come SQL injection, cross-site scripting (XSS), CSRF, debolezze crittografiche, password hardcoded e molte altre.
SafeQL — Convalida e genera automaticamente tipi TypeScript da query SQL grezze in PostgreSQL. SafeQL è un plugin ESLint per scrivere query SQL in modo type-safe.
SAST Online ©️ — Controlla a fondo il codice sorgente Android per scoprire e risolvere potenziali problemi di sicurezza e vulnerabilità. Strumento online di Static application security testing (Static Code Analysis)
Scrutinizer ⚠️ ©️ — Un verificatore di qualità del codice proprietario che può essere integrato con GitHub.
Security Code Scan ⚠️ — Analizzatore di sicurezza del codice per C# e VB.NET. Rileva vari pattern di vulnerabilità di sicurezza: SQLi, XSS, CSRF, XXE, Open Redirect, ecc. Si integra in Visual Studio 2015 e versioni successive. Rileva vari pattern di vulnerabilità di sicurezza: SQLi, XSS, CSRF, XXE, Open Redirect, ecc.
sem — CLI di controllo di versione semantico che fornisce diff a livello di entità, blame e analisi d'impatto sopra git. Utilizza tree-sitter per analizzare 26 linguaggi e costruisce un grafo di dipendenze cross-file con hashing strutturale. I comandi includono sem diff, sem blame, sem graph e sem impact per l'analisi del raggio d'impatto delle modifiche al codice.
Semgrep — Uno strumento di analisi statica veloce e open-source per trovare bug e far rispettare gli standard di codice in fase di editor, commit e CI. Le sue regole assomigliano al codice che già scrivi; niente abstract syntax tree o lotta con le regex. Supporta oltre 17 linguaggi.
Semgrep Supply Chain ©️ — Trova e risolve rapidamente problemi di sicurezza ad alta priorità. Semgrep Supply Chain dà priorità al 2% delle vulnerabilità che sono raggiungibili dal tuo codice.
Seqra — Analizzatore statico orientato alla sicurezza per applicazioni web Java e Kotlin. Analizza il bytecode con regole YAML in stile Semgrep e dataflow di livello CodeQL (con supporto Spring di prima classe) per trovare vulnerabilità che gli scanner basati solo sul sorgente non rilevano.
ShiftLeft Scan ⚠️ — Scan è una piattaforma DevSecOps open-source gratuita per rilevare problemi di sicurezza nel codice sorgente e nelle dipendenze. Supporta un'ampia gamma di linguaggi e pipeline CI/CD. Nota: ShiftLeft è stato rinominato Qwiet AI nel 2023, che è stato successivamente acquisito da Harness a settembre 2025. Questo progetto open-source non è più mantenuto.
shipshape ⚠️ — Piattaforma di analisi statica di programmi che consente ad analizzatori personalizzati di inserirsi tramite un'interfaccia comune.
Sigrid ©️ — Sigrid ti aiuta a migliorare il tuo software misurando la qualità del codice del tuo sistema, e poi confronta i risultati con un benchmark di migliaia di sistemi industriali per darti consigli concreti sulle aree in cui puoi migliorare.
Similarity Tester — Uno strumento che trova somiglianze tra o all'interno di file per supportarti nell'individuare violazioni del principio DRY.
Skylos — Rilevamento di codice morto, scansione di sicurezza, rilevamento di segreti e analisi della qualità del codice per Python, TypeScript e Go. Analisi consapevole del framework con il 98% di recall. Include GitHub Action per CI/CD, estensione VS Code e server MCP per l'integrazione con agenti AI.
Snyk Code ©️ — Snyk Code trova vulnerabilità di sicurezza basate sull'AI. La sua velocità di analisi ci consente di analizzare il tuo codice in tempo reale e fornire risultati quando premi il pulsante di salvataggio nel tuo IDE. I linguaggi supportati sono Java, JavaScript, Python, PHP, C#, Go e TypeScript. Integrazioni con GitHub, BitBucket e Gitlab. È gratuito da provare e fa parte della piattaforma Snyk che copre anche SCA, container e IaC.
SonarQube Cloud ©️ — SonarQube Cloud consente al tuo team di fornire codice pulito in modo coerente ed efficiente con uno strumento di code review che si integra facilmente nelle piattaforme cloud DevOps ed estende il tuo flusso di lavoro CI/CD. SonarQube Cloud offre un piano gratuito.
SonarQube for IDE — SonarQube for IDE (precedentemente SonarLint) è un'estensione IDE gratuita disponibile per IntelliJ, VS Code, Visual Studio ed Eclipse, per trovare e correggere problemi di codice in tempo reale, segnalando i problemi mentre scrivi il codice, proprio come un correttore ortografico. Più di un linter, fornisce anche una ricca guida contestuale per aiutare gli sviluppatori a capire perché c'è un problema, valutare il rischio e istruirli su come risolverlo.
SonarQube Server — SonarQube dota i team di sviluppo di una soluzione di qualità e sicurezza del codice che si integra profondamente nel tuo ambiente aziendale; consentendoti di distribuire codice pulito in modo coerente e affidabile. SonarQube fornisce una Community Build gratuita e open source.
Sonatype ©️ — Segnala vulnerabilità note nelle dipendenze comuni e raccomanda pacchetti aggiornati per ridurre al minimo le breaking changes
Soto Platform ©️ — Suite di strumenti di analisi statica composta da tre componenti: Sotoarc (Architecture Analysis), Sotograph (Quality Analysis) e Sotoreport (Quality report). Aiuta a trovare differenze tra architettura e implementazione, violazioni di interfaccia (ad es. accesso esterno a parti private di sottosistemi, rilevamento di tutte le classi, file, package e sottosistemi fortemente accoppiati da relazioni cicliche e altro ancora. La famiglia di prodotti Sotograph funziona su Windows e Linux.
SourceMeter ©️ — Analisi statica del codice per C/C++, Java, C#, Python e versioni RPG III e RPG IV (incluso free-form).