github.com/LumeraProtocol/sdk-go as documented in the repo. For generated API docs see pkg.go.dev. For a guided start see the Go SDK page.
Client factory
Config fields
Options include
lumerasdk.WithLogger(*zap.Logger). The keyring argument is a standard Cosmos SDK keyring.Keyring.
Factory for multiple signers
NewFactory shares one configuration and one set of transports. WithSigner returns a per account client. Close each client when done.
Blockchain surface
client.Blockchain wraps the Lumera gRPC API with per module clients.
Action states are
PENDING, PROCESSING, DONE, and FAILED. Approved cross-chain actions can also reach APPROVED after MsgApproveAction.
Cascade surface
client.Cascade wraps the SuperNode SDK for file operations.
Upload options for interchain flows include
cascade.WithICACreatorAddress, cascade.WithAppPubkey, and cascade.WithICASendFunc. Download accepts cascade.WithDownloadSignerAddress to sign with a controller chain key.
Standalone Cascade client
For interchain account flows you can build the Cascade client directly with owner settings.ICA helpers
Theica package assembles ICS-27 packets and decodes acknowledgements.
The interchain accounts concept page walks through the full flow these helpers support.
Crypto helpers
Thepkg/crypto package covers keyring setup and signing.
One keyring can hold both key types under different names. The ICA controller config accepts a separate
HostKeyName when the controller and host chains use different key types.
Examples in the repo
The examples directory has runnable samples for cascade upload and download, action queries, multi account factories, EVM balance reads, Ethereum format transfers, ERC20 conversion, precompile calls, and ICA request and approve flows.Next steps
Go SDK getting started
Install the SDK and run your first upload.
Smart contracts
What the EVM examples build on.