Client Development

Overview to Client side development. Quick access to TypeScript and Rust SDKs.

Build client applications that interact with ZK Compression across web, Node.js, and native environments using our TypeScript and Rust SDKs.

Typescript Client

Typescript

Rust Client

  • For devnet and mainnet use light-client

    • An RPC client for compressed accounts and tokens. Find a full list of JSON RPC methods here.

    • It connects to the Photon indexer that tracks compressed state to query compressed accounts and the prover service for validity proofs.

  • For local testing use light-program-test

    • Initializes in-process Solana VM via LiteSVM with auto-funded payer, local prover server and in-memory indexer.

  • LightClient and LightProgramTest implement the same Rpc and Indexer traits. Seamlessly switch between light-program-test, local test validator, and public Solana networks.

Rust

Installation

npm install --save \
    @lightprotocol/stateless.js \
    @lightprotocol/compressed-token \
    @solana/web3.js \
    @lightprotocol/zk-compression-cli
rust-client.toml
[dependencies]
light-client = "0.13.1" 

Environments

Start a local test-validator with the below command. It will start a single-node Solana cluster, an RPC node, and a prover node at ports 8899, 8784, and 3001.

light test-validator 

See the CLI Installation Guide for more.

CLI Installation

Examples

Next Steps

Learn about SDKs for program development.

Program Development

Last updated

Was this helpful?