Go Wiki: CodeTools
An overview of tools that will help improve your Go code
All-in-one
- golangci-lint - Fast linters runners for Go. Bundle of
gofmt
,govet
,errcheck
,staticcheck
,revive
and many other linters. Recommended by the original author to replace gometalinter (Drop-in replacement). - DEPRECATED: gometalinter - Automates the installation, configuration and application of
gofmt
,golint
,govet
and several other code validation tools.
Code Formatting
Articles
Tools
- air - Live reload for Go apps.
- gofmt - Start with the standard Go code formatter.
- DEPRECATED: golint - Detects style mistakes in Go code.
- staticcheck - Go programming language linter.
- goimports - Format code and fix your import statements.
- gofumpt - A stricter gofmt.
- revive - Fast, configurable, extensible, flexible, and beautiful linter for Go.
Code generation, Templating and Generics
- json-to-go - Generate Go structs from JSON.
- Go gen - Type-driven code generation (generics).
- gojson - Another Go struct generator.
- gotemplate - Package-based templating system for Go.
- DEPRECATED: sqlgen - Generate Go code for SQL interactions.
- zek - Generate Go struct from XML.
- apidocgen - Generate web apis markdown docs and mocks.
- goaccessor - Getters and setters generator.
Refactoring
Articles
- gorename - easy refactoring
- Refactoring Tools - An overview of refactoring tools for Go.
- Quick renaming with gofmt
Tools
- eg - Example-based refactoring tool for Go.
- gofmt - Start with the standard Go code formatter.
- gorename - Renaming tool for Go.
Error Detection
Articles
- Go Inspection Tools - An overview of tools for Go code inspection.
Tools
- AlignCheck, StructCheck, VarCheck - A suite of tools for checking your code.
- errcheck - Ensure you check your error conditions.
- go vet - Read this first on how to use the
go vet
command. - DEPRECATED: SafeSQL - Protect against unsafe SQL in your code (deprecated).
Navigation
- Go Guru - User Manual - A tool for understanding Go code.
- Pythia - A browser-based UI for Go Guru.
Visualization
- godepgraph - A tool for generating dependency graphs of Go code.
- go-size-analyzer - A tool that shows the size of each dependency of a Go binary.
This content is part of the Go Wiki.