7,363 open-source and SaaS tools, with GitHub stats refreshed every day.

golangci-lint

Open source

A fast Go linters runner that executes many linters in parallel with caching, YAML configuration and IDE integration, for local use and CI pipelines.

golangci-lint.run
golangci-lint homepage screenshot
GitHub stars
19k
Last commit
yesterday
Repository age
8 years
Version
v2.14.0
Licence
GPL-3.0
Self-hosted
Yes

About golangci-lint

golangci-lint is a tool that runs many Go linters together and reports their findings in one place. Instead of installing and invoking each linter on its own, you configure golangci-lint once and let it do the work, which keeps code review focused on logic rather than style and common mistakes.

It runs linters in parallel, caches results to speed up repeated runs, and reads configuration from YAML files. It plugs into the major IDEs and bundles more than a hundred linters, so teams can choose which checks to enable. Documentation covers installation on a developer machine and on CI/CD systems, and the project's site hosts configuration references and linter lists.

golangci-lint is written in Go and licensed under GPL-3.0. It is built by volunteers and funded through sponsors and donations. It runs wherever Go does, locally or inside build pipelines, so there is no hosted service. It is a common quality gate in Go projects of all sizes.

Key features

  • Runs many linters in parallel
  • Result caching for fast repeat runs
  • Configuration through YAML files
  • Integrations with major IDEs
  • Over a hundred bundled linters
  • CI/CD installation guidance

Good fit for

  • →Enforcing code quality in Go repositories
  • →Pre-merge checks in CI pipelines
  • →Consistent linting across a team
Built with
Go
Tags
golang
linter
ci
code-quality
static-analysis
developer-tools
devops
go

golangci-lint: questions and answers

What is golangci-lint used for?
golangci-lint is a fast Go linters runner that executes many linters in parallel with caching, YAML configuration and IDE integration, for local use and CI pipelines. It is a good fit for enforcing code quality in Go repositories, pre-merge checks in CI pipelines and consistent linting across a team.
Is golangci-lint open source?
Yes. golangci-lint is open source under the GPL-3.0 licence. Its source code is on GitHub at golangci/golangci-lint and is written mainly in Go.
Is golangci-lint free?
Yes. golangci-lint is open source, so the software itself is free to use.
What are some alternatives to golangci-lint?
Similar open-source tools in the Developer Tools category include Revive, PhpMetrics and Woke. SaaS products in the same category include Qodana, Codacy and GoLand.
Is golangci-lint actively maintained?
Yes. The most recent commit to golangci-lint was on 1 October 2026, and the latest release is v2.14.0, published on 24 September 2026. The project has 19k stars on GitHub.

Open-source alternatives to golangci-lint

See all

SaaS alternatives to golangci-lint

See all