List of Go software and tools

This is a list of Go software and tools, including compilers, development environments, build tools, testing frameworks, web frameworks, database tools, and related software for the Go programming language.

Core toolchain

  • Go — programming language and toolchain
  • go command — build and package tool[1]
  • gofmt — source code formatter[2][3]
  • go vet — static analysis tool[4]

Compilers and runtimes

Development environments and editors

Language servers and editor tools

  • delve — debugger[18]
  • gopls — Go language server[19][20]
  • golangci-lint — lint runner[21]
  • revive — linter[22]
  • staticcheck — static analysis tool[23]

Build, dependency and release tools

  • Air — live reload development tool[24]
  • dep — deprecated dependency manager[25]
  • Go modules — dependency management system[26][27]
  • Goreleaser — release automation tool[28][29]
  • Mage — build tool[30]
  • Task — task runner[31]

Testing and benchmarking

  • benchstat — benchmark comparison tool[32]
  • Ginkgo — testing framework[33]
  • GoMock — mock generation tool[34][35]
  • testify — testing toolkit[36][37]
  • testing — standard testing package[38]

Web frameworks and HTTP tools

  • Beego — web framework[39]
  • Caddy — web server[40]
  • Chi — router[41]
  • Echo — web framework[42]
  • Fiber — web framework[43]
  • Gin — web framework[44]
  • Gorilla Mux — router[45]
  • Hugo — static site generator[46]
  • Revel — web framework[47]
  • Traefik — reverse proxy and load balancer[48]

RPC and API tools

  • Goa — API design framework[49][50]
  • gRPC — remote procedure call framework[51]
  • grpc-gateway — REST gateway[52]
  • oapi-codegen — OpenAPI code generator[53][54]
  • Swag — OpenAPI documentation tool[55][56]

Database and ORM tools

Command-line and terminal tools

  • Bubble Tea — terminal user interface framework[65][66]
  • Cobra — command-line framework[67][68]
  • pflag — flag parsing library[69][70]
  • urfave/cli — command-line framework[71]
  • Viper — configuration library[72][73]

GUI toolkits and application frameworks

  • Fyne — cross-platform graphical user interface toolkit

Documentation, generation and analysis

  • errcheck — unchecked error checker[74][75]
  • godoc — documentation tool[76]
  • goimports — import management tool[77]
  • mockgen — mock generator[78]
  • pkgsite — package documentation site[79][80]
  • Prometheus — monitoring and alerting toolkit[81]
  • stringer — code generation tool[82][83]
  • wire — dependency injection code generator[84][85]

Package hosting and community services

  • GoCenter — former Go package repository[86]
  • pkg.go.dev — package documentation and discovery site[87]
  • proxy.golang.org — module proxy[88]

Major applications written in Go

  • Consul — service networking platform
  • Docker — containerization platform
  • InfluxDB — time-series database written in Go[89]
  • Kubernetes — container orchestration platform
  • Terraform — infrastructure as code tool
  • Vault — secrets management tool

See also

References

  1. ^ https://go.dev/doc/cmd
  2. ^ https://pkg.go.dev/cmd/gofmt
  3. ^ https://github.com/golang/go/blob/master/src/cmd/gofmt/gofmt.go
  4. ^ https://pkg.go.dev/cmd/vet
  5. ^ https://go.dev/src/cmd/compile/README
  6. ^ https://go.dev/doc/install/gccgo
  7. ^ https://github.com/gopherjs/gopherjs
  8. ^ https://go.googlesource.com/gollvm/
  9. ^ https://github.com/go-llvm/llgo
  10. ^ https://pkg.go.dev/tinygo.org/x/go-llvm
  11. ^ https://tinygo.org/
  12. ^ https://github.com/traefik/yaegi
  13. ^ https://pkg.go.dev/github.com/traefik/yaegi/cmd/yaegi
  14. ^ https://go.dev/gopls/editor/emacs
  15. ^ https://go.dev/wiki/IDEsAndTextEditorPlugins
  16. ^ https://github.com/visualfc/liteide
  17. ^ https://github.com/rsms/Go.tmbundle
  18. ^ https://github.com/go-delve/delve
  19. ^ https://github.com/golang/tools/blob/master/gopls/README.md?plain=1
  20. ^ https://go.dev/gopls/
  21. ^ https://github.com/golangci/golangci-lint
  22. ^ https://github.com/mgechev/revive
  23. ^ https://github.com/dominikh/go-tools
  24. ^ https://github.com/air-verse/air
  25. ^ https://github.com/golang/dep
  26. ^ https://go.dev/ref/mod
  27. ^ https://go.dev/blog/using-go-modules
  28. ^ https://github.com/goreleaser/goreleaser
  29. ^ https://goreleaser.com/customization/builds/go/
  30. ^ https://github.com/magefile/mage
  31. ^ https://github.com/go-task/task
  32. ^ https://pkg.go.dev/golang.org/x/perf/cmd/benchstat
  33. ^ https://github.com/onsi/ginkgo
  34. ^ https://pkg.go.dev/github.com/golang/mock/gomock
  35. ^ https://github.com/golang/mock
  36. ^ https://github.com/stretchr/testify
  37. ^ https://pkg.go.dev/github.com/go-openapi/testify/v2
  38. ^ https://go.dev/doc/tutorial/add-a-test
  39. ^ https://github.com/beego/beego
  40. ^ https://github.com/caddyserver/caddy
  41. ^ https://github.com/go-chi/chi
  42. ^ https://github.com/labstack/echo
  43. ^ https://github.com/gofiber/fiber
  44. ^ https://github.com/gin-gonic/gin
  45. ^ https://github.com/gorilla/mux
  46. ^ https://github.com/gohugoio/hugo
  47. ^ https://github.com/revel/revel
  48. ^ http://github.com/traefik/traefik
  49. ^ https://github.com/goadesign/goa
  50. ^ https://pkg.go.dev/goa.design/goa
  51. ^ https://github.com/grpc/grpc-go
  52. ^ https://github.com/grpc-ecosystem/grpc-gateway
  53. ^ https://github.com/oapi-codegen/oapi-codegen
  54. ^ https://pkg.go.dev/github.com/deepmap/oapi-codegen
  55. ^ https://github.com/swaggo/swag
  56. ^ https://pkg.go.dev/github.com/go-openapi/swag
  57. ^ https://github.com/uptrace/bun
  58. ^ https://pkg.go.dev/github.com/uptrace/bun
  59. ^ https://github.com/cockroachdb/cockroach-go
  60. ^ https://pkg.go.dev/github.com/cockroachdb/cockroach-go/v2/crdb
  61. ^ https://github.com/ent/ent
  62. ^ https://gorm.io/index.html
  63. ^ https://github.com/jmoiron/sqlx
  64. ^ https://pkg.go.dev/github.com/jmoiron/sqlx
  65. ^ https://github.com/charmbracelet/bubbletea
  66. ^ https://pkg.go.dev/github.com/charmbracelet/bubbletea#section-readme
  67. ^ https://github.com/spf13/cobra
  68. ^ https://pkg.go.dev/github.com/spf13/cobra
  69. ^ https://github.com/spf13/pflag
  70. ^ https://pkg.go.dev/github.com/spf13/pflag
  71. ^ https://github.com/urfave/cli
  72. ^ https://pkg.go.dev/github.com/spf13/viper
  73. ^ https://github.com/spf13/viper
  74. ^ https://github.com/kisielk/errcheck
  75. ^ https://pkg.go.dev/github.com/kisielk/errcheck/errcheck
  76. ^ https://pkg.go.dev/golang.org/x/tools/cmd/godoc
  77. ^ https://pkg.go.dev/golang.org/x/tools/cmd/goimports
  78. ^ https://github.com/golang/mock
  79. ^ https://pkg.go.dev/golang.org/x/pkgsite
  80. ^ https://github.com/golang/pkgsite
  81. ^ https://github.com/prometheus/prometheus
  82. ^ https://github.com/golang/tools/blob/master/cmd/stringer/stringer.go
  83. ^ https://pkg.go.dev/golang.org/x/tools/cmd/stringer
  84. ^ https://github.com/google/wire
  85. ^ https://pkg.go.dev/github.com/google/wire
  86. ^ https://github.com/jfrog/gocenter
  87. ^ https://pkg.go.dev/
  88. ^ https://proxy.golang.org/
  89. ^ https://github.com/influxdata/influxdb