Skip to content

CodeTools

Robert Pająk edited this page Mar 3, 2021 · 38 revisions

An overview of tools that will help improve your Go code

All-in-one

  • golangci-lint - Bundle of gofmt, golint, govet and many other tools that shares work between the different linters for better performance. 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

  • gofmt - Start with the standard Go code formatter
  • golint - Detects style mistakes in Go code
  • 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
  • sqlgen - Generate Go code for SQL interactions.
  • zek - Generate Go struct from XML.

Refactoring

Articles

Tools

  • eg - Example-based refactoring tool for Go
  • gofmt - Start with the standard Go code formatter
  • gorename - Renaming tool for Go

Error Detection

Articles

Tools

Navigation

Visualization

  • godepgraph - A tool for generating dependency graphs of Go code.
Clone this wiki locally