golangci-lint

Introduction

Golangci-lint is a fast linters runner for Go.

It runs linters in parallel, uses caching, supports YAML configuration, integrates with all major IDEs, and includes over a hundred linters.

golangci-lint demo

Features

  • ⚡ Fast: runs linters in parallel, reuses Go build cache and caches analysis results.
  • ⚙️ YAML-based configuration.
  • 🖥 Integrations with VS Code, Sublime Text, GoLand, GNU Emacs, Vim, GitHub Actions.
  • 🥇 A lot of linters included, no need to install them.
  • 📈 Minimum number of false positives because of tuned default settings.
  • 🔥 Nice outputs: text with colors and source code lines, JSON, tab, HTML, Checkstyle, Code-Climate, JUnit-XML, TeamCity, SARIF.

Get started now!

Supporting Us

Golangci-lint is a free and open-source project built by volunteers.

If you value it, consider supporting us, we appreciate it! ❤️

Open Collective backers and sponsors GitHub Sponsors Linter Authors

Social Networks

Join our Slack channel by joining Gophers workspace and then joining channel #golangci-lint.

Follow the news and releases:

Follow on Mastodon Follow on Bluesky Follow on Twitter

Contributors

This project exists thanks to all the people who contribute. How to contribute.

golangci-lint contributors

Stargazers over time

Stargazers over time

Edit this page on GitHub