Skip to main content
The Go SDK is the official SDK for backend services, CLI tools, and infrastructure that talk to Lumera Protocol. It puts chain queries, transactions, and Cascade file storage behind one client. The current release is v1.2.0 and it needs Go 1.26. The SDK unifies three interfaces. Unlike the JavaScript SDK, which routes file transfers through a REST gateway, the Go SDK talks to SuperNodes directly over gRPC on port 4444. Your machine needs network access to that port.

Install

Create a client

lumerasdk.New takes a config, a Cosmos SDK keyring, and options. Close the client when you are done.
main.go
The test keyring backend stores keys unencrypted. Use the os backend and a funded key for anything beyond local experiments. Never commit mnemonic files.

Upload a file

Upload registers the action on chain, waits for inclusion, and streams the file to one of the selected SuperNodes. The result carries the ActionID, the permanent on-chain reference to your file.
The block height of the registration transaction seeds the deterministic selection of processing SuperNodes. The SDK tries each selected node in order and uploads to the first that responds.

Download a file

Download fetches the file by action ID into a local directory.

Query actions

client.Blockchain exposes the chain modules. Action queries return the on-chain state of a storage request.
The state moves from PENDING to PROCESSING to DONE. A failed upload ends at FAILED and the escrowed fee is refunded. Subscribe to task events with client.Cascade.SubscribeToEvents when you need progress callbacks instead of polling.

Multiple accounts

The factory pattern reuses one configuration and one set of connections across several signers.

EVM and cross-chain support

The SDK is EVM ready. The keyring supports both secp256k1 (Cosmos, coin type 118) and eth_secp256k1 (EVM, coin type 60) key types. The repo ships examples for EVM balance reads, Ethereum format transfers, ERC20 conversion, and calling Lumera precompiles from the EVM. See the smart contracts overview for what the precompiles expose. Full ICS-27 interchain account support lets an app on another Cosmos chain drive Cascade through IBC. The interchain accounts concept page explains the flow.

Next steps

Go SDK reference

Config fields, client surfaces, and crypto helpers.

How Cascade works

The storage flow behind Upload and Download.

Interchain accounts

Drive Cascade from another Cosmos chain.