Comment Comment by jzelinskie Things I can't live without in a new Go project in no particular order:- https://github.com/golangci/golangci-lint - meta-linter- https://goreleaser.com - automate release workflows- https://magefile.org - build tool that can version your tools- https://godoc.org/github.com/ory/dockertest/v3 - run containers for e2e testing- https://github.com/ecordell/optgen - generate functional options- https://golang.org/x/tools/cmd/stringer - generate String()- https://mvdan.cc/gofumpt - stricter gofmt- https://github.com/stretchr/testify - test assertion library- https://github.com/rs/zerolog - logging- https://github.com/spf13/cobra - CLI frameworkFWIW, I just lifted all the tools we use for https://github.com/authzed/spicedbWe've also written some custom linters that might be useful for other folks: https://github.com/authzed/spicedb/tree/main/tools/analyzers parent jzelinskie 3 years ago
- https://github.com/golangci/golangci-lint - meta-linter
- https://goreleaser.com - automate release workflows
- https://magefile.org - build tool that can version your tools
- https://godoc.org/github.com/ory/dockertest/v3 - run containers for e2e testing
- https://github.com/ecordell/optgen - generate functional options
- https://golang.org/x/tools/cmd/stringer - generate String()
- https://mvdan.cc/gofumpt - stricter gofmt
- https://github.com/stretchr/testify - test assertion library
- https://github.com/rs/zerolog - logging
- https://github.com/spf13/cobra - CLI framework
FWIW, I just lifted all the tools we use for https://github.com/authzed/spicedb
We've also written some custom linters that might be useful for other folks: https://github.com/authzed/spicedb/tree/main/tools/analyzers