Run a Node

Running a Node for Local Development

For local development, the ZK Compression CLI test-validator command starts a single-node Solana cluster with all relevant nodes (Photon RPC and Prover), system programs, accounts, and runtime features:

light test-validator

To connect to public networks (i.e., Devnet, Mainnet-Beta), you can either work with an RPC infrastructure provider that supports ZK Compression, such as Helius Labs, or run your own nodes:

There are three different types of nodes:

Becoming an operator for any node type is permissionless

Photon RPC Node

RPC nodes index the compression programs, enabling clients to read and build transactions interacting with compressed state

The canonical compression indexer is named Photon. It can be run locally and requires minimal setup, which must be pointed to an existing Solana RPC. See the Github repo for more info:

Prover Node

Provers can generate validity proofs for state inclusion on behalf of app and wallet developers

Prover nodes can be operated either stand-alone or with an RPC node: in its default configuration, the canonical Photon RPC node implementation by Helius Labs bundles a Prover node. The ZK Compression RPC API specification supports proof generation via the getValidityProof endpoint, making it easy to serve proofs using regular RPC methods via the same port

Please refer to the Github repo for more info:

Light Forester Node

Developers may choose to have their program-owned state trees serviced by a network of Light Forester nodes. These nodes manage the creation, rollover, and updating of shared and program-owned state trees.

Last updated