The Best Go Static Analysis Tools (Linters/Formatters)
We rank 95 Go linters, code analyzers, formatters, and more. Find and compare tools like Mega-Linter, Semgrep, go vet, and more. Please rate and review tools that you've used. This helps others find the best tools for their projects.
51 Go Tools
Govulncheck reports known vulnerabilities that affect Go code. It uses static analysis of source code or a binary's symbol table to narrow down reports to only those that could affect the application. By default, govulncheck makes requests to the Go vulnerability database at https://vuln.go.dev. Requests to the vulnerability database contain only module paths, not code or other properties of your program.
Wrap and fix Go errors with the new %w verb directive. This tool analyzes fmt.Errorf() calls and reports calls that contain a verb directive that is different than the new %w verb directive introduced in Go v1.13. It's also capable of rewriting calls to use the new %w wrap verb directive.
Enforce a stricter format than
gofmt, while being backwards-compatible. That is,
gofumpt is happy with a subset of the formats that
gofmt is happy with.
The tool is a fork of
gofmt as of Go 1.19, and requires Go 1.18 or later. It can be used as a drop-in replacement to format your Go code, and running gofmt after gofumpt should produce no changes.
gofumpt will never add rules which disagree with
gofmt formatting. So we extend
gofmt rather than compete with it.
44 Multi-Language Tools
Mega-Linter can handle any type of project thanks to its 70+ embedded Linters, its advanced reporting, runnable on any CI system or locally, with assisted installation and configuration, able to apply formatting and fixes
A fast, open-source, static analysis tool for finding bugs and enforcing code standards at editor, commit, and CI time. Its rules look like the code you already write; no abstract syntax trees or regex wrestling. Supports 17+ languages.
Open-Source static code analysis tool to discover, filter and prioritize security risks and vulnerabilities leading to sensitive data exposures (PII, PHI, PD). Highly configurable and easily extensible, built for security and engineering teams.
SonarQube is an open platform to manage code quality.
Reports known vulnerabilities in common dependencies and recommends updated packages to minimize breaking changes
Vulnerability Scanner and Risk Evaluation for containers, serverless and hosts at runtime. ThreatMapper generates runtime BOMs from dependencies and operating system packages, matches against multiple threat feeds, scans for unprotected secrets, and scores issues based on severity and risk-of-exploit.
CodeScene is a quality visualization tool for software. Prioritize technical debt, detect delivery risks, and measure organizational aspects. Fully automated.
In-depth static analysis to find issues in verticals of bug risks, security, anti-patterns, performance, documentation and style. Native integrations with GitHub, GitLab and Bitbucket. Less than 5% false positives.
Modern repositories include many technologies, each with its own set of linters. With 30+ linters and counting, Trunk makes it dead-simple to identify, install, configure, and run the right linters, static analyzers, and formatters for all your repos.
Better Code Hub
Better Code Hub checks your GitHub codebase against 10 engineering guidelines devised by the authority in software quality, Software Improvement Group.
Statically generates a call graph image and displays it on screen.
Code Analysis to ship Better Code, Faster.
Commercial Static Code Analysis which doesn't require pre-compilation.
Scanmycode CE (Community Edition)
Scanmycode - Code Scanning/SAST/Linting using many tools/Scanners with One Report
Automated Code Reviews and Technical Debt management platform that supports 12+ languages.
Identify and remediate cyber threats in a blazingly fast, collaborative environment, with seamless integration in your SDLC. Python, C\C++, Java, C#, PHP and more.
Static code analysis tool for Java,C,C++,C#,Go.
Tencent Cloud Code Analysis (TCA for short, code-named CodeDog inside the company early) is a comprehensive platform for code analysis and issue tracking. TCA consist of three components, server, web and client. It integrates of a number of self-developed tools, and also supports dynamic integration of code analysis tools in various programming languages.
Continuous Hybrid Fuzzing and Dynamic Analysis for Security Development Lifecycle.
A proprietary code quality checker that can be integrated with GitHub.
Linter for integrating annotated TODOs with your issue trackers
Crash Analysis and Severity Report.
Creates reports of over 400 rule patterns for feature detection (e.g. the use of cryptography or version control in apps).
CodeSee is mapping and automating your app's services, directories, file dependencies, and code changes. It's like Google Map, but for code.t
Lizard is an extensible Cyclomatic Complexity Analyzer for many programming languages including C/C++ (doesn't require all the header files or Java imports). It also does copy-paste detection (code clone detection/code duplicate detection) and many other forms of static code analysis. Counts lines of code without comments, CCN (cyclomatic complexity number), token count of functions, parameter count of functions.
Multi-language cloud-based static code analysis. History, trends, security hot-spots, pull request analysis and more. Free for open source.
A linter and formatter to help you to improve copywriting, correct spaces, words, punctuations between CJK (Chinese, Japanese, Korean).
CI/CD-agnostic DevSecOps platform which combines industry-leading fuzzing engines for finding bugs and visualizing code coverage
Automated Code Analysis for repos on GitHub or BitBucket.