See FORK.md
for instructions.
git checkout extend
(cd go/extensions; go mod download)
(cd go/src; go clean --modcache; go mod download)
See extensions/types.go
for an example of how to declare a struct (in this case, a custom transaction message).
See extensions/codec.go
for an example of how to register the struct with the codec.
Interfaces can be registered the same way. See lib/codec.go
for examples (all the registered types from the Cosmos SDK and Tendermint core).
yarn setup
See test/extensions.test.ts for an example of how to test marshaling and unmarshaling a struct.
yarn test