Go Wiki: GoGenerateTools
go generate is only useful if you have tools to use it with! Here is an incomplete list of useful tools that generate code.
- goyacc – Yacc for Go.
 - stringer – Implements 
fmt.Stringerinterface for enums. - gostringer – Implements 
fmt.GoStringerinterface for enums. - jsonenums – Implements 
json.Marshalerandjson.Unmarshalerinterfaces for enums. - go-syncmap - Generates Go code using a package as a generic template for 
sync.Map. - go-syncpool - Generates Go code using a package as a generic template for 
sync.Pool. - go-atomicvalue - Generates Go code using a package as a generic template for 
atomic.Value. - go-nulljson - Generates Go code using a package as a generic template that implements 
database/sql.Scanneranddatabase/sql/driver.Valuer. - go-enum - Generates Go code using a package as a generic template which implements interface 
fmt.Stringer|binary|json|text|sql|yamlfor enums. - enumer - Generates Go code that convert Go enum to/from strings.
 - go-import — Performs auto import of non go files.
 - gojson - Generates go struct definitions from example json documents.
 - vfsgen - Generates a vfsdata.go file that statically implements the given virtual filesystem.
 - goreuse - Generates Go code using a package as a generic template by replacing definitions.
 - embedfiles - Embeds files into Go code.
 - ragel - State machine compiler
 - peachpy - x86-64 assembler embedded in Python, generates Go assembly
 - bundle - Bundle creates a single-source-file version of a source package suitable for inclusion in a particular target package.
 - msgp - A Go code generator for MessagePack
 - protobuf - protobuf
 - thriftrw - thrift
 - gogen-avro - avro
 - swagger-gen-types - go types from swagger specifications
 - avo - generate assembly code with Go
 - Wire - Compile-time Dependency Injection for Go
 - sumgen - generate interface method implementations from sum-type declarations
 - interface-extractor - generates an interface of a desired type, with only methods used within the package.
 - deep-copy - creates a deep copy method for the given types.
 - libfsm - fsm toolkit supporting (among others) Go and Go-flavored amd64 assembly for matching regexps
 - re2c - lexer generator for C, C++ and Go
 - re2dfa - Transform regular expressions into finite state machines and output Go source code
 - pigeon - a PEG parser generator for Go
 
This content is part of the Go Wiki.