Skip to main content
ZK Compression’s Rust crates are published to crates.io and can be found on docs.rs with the light- prefix.

Rust Crates

  • light-sdk — For Anchor and native programs. Includes CPI utilities, compressed account abstractions similar to anchor Account, and metadata structs for CPIs to the Light System program.
  • light-sdk-pinocchio — For Pinocchio programs. Pinocchio-optimized SDK with compressed account abstractions and CPI utilities.

Light Programs Overview

Your custom program invokes the Light system program via Cross-Program Invocation (CPI) to leverage ZK Compression.
ProgramDescription
light-system-programEnforces compressed account layout, ownership checks, and validity proof verification. Used to create/write compressed accounts and PDAs.
light-compressed-tokenSPL-compatible compressed token implementation with arbitrary compression/decompression support.
account-compressionState and address tree implementation used by the Light System program. Clients and custom programs do not interact with the Account Compression Program — this is handled under the hood.

Version Requirements

These are the required version for program development.
  • Rust: 1.86.0 or later
  • Solana CLI: 2.2.15
  • Anchor CLI: 0.31.1
  • Zk compression CLI: 0.27.0 or later
  • Node.js: 23.5.0 or later

Program Examples

Program Examples

Build your own program

Get an overview of compressed PDAs and create your custom program.

Create a Program with Compressed PDAs