63 Repositories
Go linter Libraries
misspelled word linter for Go comments, string literals and embedded files
gospel The gospel program lints Go source files for misspellings in comments, strings and embedded files. It uses hunspell to identify misspellings an
Linter for Go's fmt.Errorf message
wrapmsg wrapmsg is Go code linter. this enforces fmt.Errorf's message when you wrap error. Example // OK 👍🏻 if err := pkg.Cause(); err != nil { re
Goalinter-v1: Goa framework (version1) linter
goavl: Goa framework (ver1) linter goavlは、goa version1(フォーク版)のlinterです。開発目的は、goa
nostdglobals is a simple Go linter that checks for usages of global variables defined in the go standard library
nostdglobals is a simple Go linter that checks for usages of global variables defined in the go standard library
Go-commitlinter - simple commit message linter
go-commitlinter go-commitlinter is simple commit message linter. Quick Start go
funcresult — a Go linter to analyze function result parameters
Go linter to analyze function result parameters: require named / unnamed function result parameters
Go linter to analyze expression groups: require 'import' declaration groups
grouper — a Go linter to analyze expression groups Installation
World's spookiest linter
nosleep The world's spookiest linter nosleep is a golang-ci compatible linter which checks for and fails if it detects usages of time.Sleep. Why did y
⚡️Lightning-fast linter for .env files. Written in Rust 🦀
⚡️ Lightning-fast linter for .env files. Written in Rust 🦀 Dotenv-linter can check / fix / compare .env files for problems that may cause the applica
Interfacer - A linter that suggests interface types
interfacer Deprecated: A tool that suggests interfaces is prone to bad suggestions, so its usefulness in real code is limited. This tool will remain a
Go-perfguard - A static analyzer with emphasis on performance
perfguard This tool is a work in progress. It's not production-ready yet. perfgu
Mdlinks - Markdown cross-document links checker
mdlinks This repository provides Go package, command-line tool, and a GitHub Action that can verify cross-document links in a collection of markdown f
Source code analyzer that helps you to make your Go programs more consistent.
go-consistent Source code analyzer that helps you to make your Go programs more consistent. Quick start / Installation This install go-consistent bina
Line length linter
lll Line length linter, used to enforce line length in files. Support for only checking go files. Installation $ go get github.com/walle/lll/... Usage
Find unused parameters in Go
unparam go install mvdan.cc/unparam@latest Reports unused function parameters and results in your code. To minimise false positives, it ignores certa
Whitespace Linter - Forces you to use empty lines!
WSL - Whitespace Linter WSL is a linter that enforces a very non scientific vision of how to make code more readable by enforcing empty lines at the r
A Golang tool that does static analysis, unit testing, code review and generate code quality report.
goreporter A Golang tool that does static analysis, unit testing, code review and generate code quality report. This is a tool that concurrently runs
A Golang tool that does static analysis, unit testing, code review and generate code quality report.
goreporter A Golang tool that does static analysis, unit testing, code review and generate code quality report. This is a tool that concurrently runs
A cli client-server app with cobra
cli-client-server-calculator a cli client-server app with cobra overview this project is a cli client-server app in which client gives a bunch of numb
Bodyclose: a static analysis tool which checks whether res.Body is correctly closed
bodyclose bodyclose is a static analysis tool which checks whether res.Body is correctly closed. Install You can get bodyclose by go get command. $ go
Tool for adding vanity import to Go code
Porto Tool for adding vanity imports URI to Go files. e.g. package zipkin - package zipkin // import "github.com/openzipkin/zipkin-go" Install go ins
Independent set of GDScript tools - parser, linter and formatter
GDScript Toolkit This project provides a set of tools for daily work with GDScript. At the moment it provides: A parser that produces a parse tree for
Detect non-inclusive language in your source code.
Detect non-inclusive language in your source code. I stay woke - Erykah Badu Creating an inclusive work environment is imperative to a healthy, suppor
Vale is a command-line tool that brings code-like linting to prose
Vale: Your style, our editor Vale is a command-line tool that brings code-like linting to prose. It's fast, cross-platform (Windows, macOS, and Linux)
containedctx detects is a linter that detects struct contained context.Context field
containedctx containedctx detects is a linter that detects struct contained context.Context field Instruction go install github.com/sivchari/contained
a cli client-server app with cobra
cli-client-server a cli client-server app with cobra overview this project is a cli client-server app in which client gives a bunch of numbers with an
Linter for PostgreSQL
Использование Проверить миграции: oh-my-pg-linter check ./migrations/*.sql Добавить директории с дополнительными проверками (переопределение - кто пос
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
reviewdog - A code review dog who keeps your codebase healthy. reviewdog provides a way to post review comments to code hosting service, such as GitHu
Go linter that checks types that are json encoded - reports unsupported types and unnecessary error checks
Checks types passed to the json encoding functions. Reports unsupported types and reports occations, where the check for the returned error can be omited.
A tool to lint Grafana dashboards
Grafana Dashboard Linter This is a tool to lint Grafana dashboards for common mistakes. To use: $ go install github.com/grafana/dashboard-linter $ das
Go linter which checks for dangerous unicode character sequences
bidichk - checks for dangerous unicode character sequences bidichk finds dangerous unicode character sequences in Go source files. Considered dangerou
app-services-go-linter plugin analyze source tree of Go files and validates the availability of i18n strings in *.toml files
app-services-go-linter app-services-go-linter plugin analyze source tree of Go files and validates the availability of i18n strings in *.toml files. A
tenv detects environment variable not using t.Setenv
tenv is analyzer that detects using os.Setenv instead of t.Setenv since Go1.17
Retnilnil is a static analysis tool to detect `return nil, nil`
retnilnil retnilnil is a static analysis tool for Golang that detects return nil, nil in functions with (*T, error) as the return type. func f() (*T,
The Golang linter that checks that there is no simultaneous return of `nil` error and an invalid value.
nilnil Checks that there is no simultaneous return of nil error and an invalid value. Installation & usage $ go install github.com/Antonboom/nilnil@la
Go linter that warns about number of arguments in functions.
argslen linter Argslen is a linter that checks for long list of argument in functions. The default limit is 5 (maxArguments) and skip the test files (
a simple golang SSA viewer tool use for code analysis or make a linter
ssaviewer A simple golang SSA viewer tool use for code analysis or make a linter ssa.html generate code modify from src/cmd/compile/internal/ssa/html.
Go linter to check the struct literal to use field name
Structfield Find struct literals using non-labeled fields. The structfield analysis reports the usage of struct literal using non-labeled fields more
checkspaces is a checker for spaces between // and directives.
checkspaces checks if there is a space between // and directives.
nilassign finds that assigning to invalid memory address or nil pointer dereference.
nilassign nilassign finds that assigning to invalid memory address or nil pointer dereference. Instruction go install github.com/sivchari/nilassign/cm
falco is VCL parser and linter optimized for Fastly.
falco falco is VCL parser and linter optimized for Fastly. Disclaimer This is a VCL parser, but dedicated to Fastly's VCL (version 2.x), so we don't c
A linter that handles struct tags.
Tagliatelle A linter that handles struct tags. Supported string casing: camel pascal kebab snake goCamel Respects Go's common initialisms (e.g. HttpRe
Tools to write high performance GraphQL applications using Go/Golang.
graphql-go-tools Sponsors WunderGraph Are you looking for a GraphQL e2e data fetching solution? Supports frameworks like NextJS, type safety with gene
Prometheus rule linter
pint pint is a Prometheus rule linter. Usage There are two modes it works in: CI PR linting Ad-hoc linting of a selected files or directories Pull Req
Find in Go repeated strings that could be replaced by a constant
goconst Find repeated strings that could be replaced by a constant. Motivation There are obvious benefits to using constants instead of repeating stri
A Go linter to check that errors from external packages are wrapped
Wrapcheck A simple Go linter to check that errors from external packages are wrapped during return to help identify the error source during debugging.
Go fearless SQL. Sqlvet performs static analysis on raw SQL queries in your Go code base.
Sqlvet Sqlvet performs static analysis on raw SQL queries in your Go code base to surface potential runtime errors at build time. Feature highlights:
Small Clojure interpreter, linter and formatter.
Joker is a small Clojure interpreter, linter and formatter written in Go. Installation On macOS, the easiest way to install Joker is via Homebrew: bre
This is a style verifier intended to be used with the Gerrit checks plugin.
GERRITFMT This is a style verifier intended to be used with the Gerrit checks plugin. HOW TO USE Install formatters: go install github.com/bazelbuild/
A best practices checker for Kubernetes clusters. 🤠
Clusterlint As clusters scale and become increasingly difficult to maintain, clusterlint helps operators conform to Kubernetes best practices around r
Linter for errors.Is and errors.As
erris erris is a program for checking that errors are compared or type asserted using go1.13 errors.Is and errors.As functions. Install go get -u gith
:white_check_mark: Test generated HTML for problems
✅ htmltest If you generate HTML files, html-proofer might be the tool for you. If you can't be bothered with a Ruby environment or fancy something a b
A Golang tool that does static analysis, unit testing, code review and generate code quality report.
goreporter A Golang tool that does static analysis, unit testing, code review and generate code quality report. This is a tool that concurrently runs
Staticcheck - The advanced Go linter
The advanced Go linter Staticcheck is a state of the art linter for the Go programming language. Using static analysis, it finds bugs and performance
Fast linters Runner for Go
golangci-lint Fast linters runner for Go golangci-lint is a fast Go linters runner. It runs linters in parallel, uses caching, supports yaml config, h
🔥 ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for golint
revive Fast, configurable, extensible, flexible, and beautiful linter for Go. Drop-in replacement of golint. Revive provides a framework for developme
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
reviewdog - A code review dog who keeps your codebase healthy. reviewdog provides a way to post review comments to code hosting service, such as GitHu
Fast website link checker in Go
Muffet Muffet is a website link checker which scrapes and inspects all pages in a website recursively. Features Massive speed Colored outputs Differen
bodyclose is a static analysis tool which checks whether res.Body is correctly closed.
bodyclose is a static analysis tool which checks whether res.Body is correctly closed. Install You can get bodyclose by go get command. $ go
A simple terminal UI for Go linters
golintui golintui is a TUI tool that helps you run various kinds of linters with ease and organize its results, with the power of golangci-lint. Cool
[mirror] This is a linter for Go source code.
Golint is a linter for Go source code. Installation Golint requires a supported release of Go. go get -u golang.org/x/lint/golint To find out where g
The most opinionated Go source code linter for code audit.
go-critic Highly extensible Go source code linter providing checks currently missing from other linters. There is never too much static code analysis.
errcheck checks that you checked errors.
errcheck errcheck is a program for checking for unchecked errors in go programs. Install go get -u github.com/kisielk/errcheck errcheck requires Go 1