Skip to main content

GitHub Repository

Dependencies

Each module’s module-info.java is the list of record.
  • idl-clients-spl: java.net.http, software.sava.core, software.sava.rpc
  • idl-clients-bundle: the above, software.sava.idl.clients.spl and systems.comodal.json_iterator

Supported Programs

Clients are generated from each program’s IDL, providing typed instruction builders and account (de)serialization, plus hand-written convenience clients where useful.

Build Configuration

build.gradle.kts
These modules are published to GitHub Packages only; the quickstart shows the repository configuration.

Usage Examples

Create a Program Client

The idl-clients-spl module, used throughout the examples below, provides SPLClient and SPLAccountClient for working with tokens, associated token accounts, stake accounts, etc.

Typical Legacy Transaction Flow

v1 transactions are supported on mainnet, and TxBuilder builds them from the same generated Instruction objects; see the transaction guide for construction and signing. The example above uses the legacy transaction factories, which remain supported.

Transfer SOL

Associated Token Accounts

Token Transfers

Stake Accounts

Durable Nonce Transactions

See the official Solana documentation for context on durable nonce transactions.

Create & Initialize Nonce Account

Create & Send Durable Nonce Transaction