Stavros Vlachakis d43b0ceacd Reserving chanID for Aztec (#4440) 4 kuukautta sitten
..
js e90146b321 Update elliptic to >= 6.6.1 (#4272) 8 kuukautta sitten
js-proto-node e90146b321 Update elliptic to >= 6.6.1 (#4272) 8 kuukautta sitten
js-proto-web e90146b321 Update elliptic to >= 6.6.1 (#4272) 8 kuukautta sitten
js-query e90146b321 Update elliptic to >= 6.6.1 (#4272) 8 kuukautta sitten
js-wasm e90146b321 Update elliptic to >= 6.6.1 (#4272) 8 kuukautta sitten
rust 5101a3152e sdk/rust: fix clippy (#4327) 7 kuukautta sitten
vaa d43b0ceacd Reserving chanID for Aztec (#4440) 4 kuukautta sitten
Makefile befd9a6b29 sdk: Auto-generate ChainID methods (#4402) 4 kuukautta sitten
README.md befd9a6b29 sdk: Auto-generate ChainID methods (#4402) 4 kuukautta sitten
chainid_generator.go befd9a6b29 sdk: Auto-generate ChainID methods (#4402) 4 kuukautta sitten
devnet_consts.go 6c0177ba40 deps: Remove miguelmota/go-ethereum-hdwallet; delete unused code (#4347) 7 kuukautta sitten
go.mod 3337783c6d wormchain: add ibc-composability-mw to gateway (#3273) 2 vuotta sitten
go.sum 3337783c6d wormchain: add ibc-composability-mw to gateway (#3273) 2 vuotta sitten
mainnet_consts.go 79d918eae1 Mezo mainnet deployment (#4378) 6 kuukautta sitten
p2p_consts.go 63a5654c02 wormchain: add admin-sign command to continue wormchain validator enrollment 3 vuotta sitten
testnet_consts.go 35fd9779d2 added missing SR addresses (#4226) 6 kuukautta sitten

README.md

Wormhole Software Development Kit

This directory contains libraries in various languages for developing software that interacts with wormhole.

Adding a New ChainID

To add a new ChainID to Wormhole:

  1. Add the constant in vaa/structs.go:

    // ChainIDNewChain is the ChainID of NewChain
    ChainIDNewChain ChainID = 99
    

    Keep constants in numerical order and follow the naming convention.

  2. Regenerate methods by running:

    make go-generate
    

    This runs chainid_generator.go which auto-generates String(), ChainIDFromString(), and GetAllNetworkIDs() methods.

  3. Update other components as needed:

    • Add to governor chain lists (node/pkg/governor/mainnet_chains.go)
    • Add manual tokens if required (node/pkg/governor/manual_tokens.go)
    • Update any chain-specific configuration files
    • Add the ChainID in proto/publicrpc/v1/publicrpc.proto.
    • If watcher support is necessary, update the guardian code.

Directory Structure

  • sdk/: Go SDK. This package must live in this directory so that clients can use the github.com/wormhole-foundation/wormhole/sdk import path.
  • vaa/: Go package for using VAAs (Verifiable Action Approval).
  • js/: Legacy JavaScript SDK (Deprecated and Unsupported)
  • js-proto-node/: NodeJS client protobuf.
  • js-proto-web/: Web client protobuf.
  • js-wasm/: WebAssembly libraries.
  • rust/: Rust SDK.