The zkArb CLI provides a set of commands to compile Circom circuits, test them locally, and deploy verifier contracts on-chain. Each command is designed to abstract away low-level tooling while keeping workflows explicit and developer-friendly.
compilenpx zkarb-sdk compile <circomFilePath>
Compiles a Circom circuit into the necessary intermediate artifacts used for proof generation.
The compilation process generates:
These artifacts are later consumed by the test and deploy commands.
npx zkarb-sdk compile circuits/transfer.circom
testnpx zkarb-sdk test <folder> <inputJson>
Tests a compiled circuit by generating a witness, producing a proof, and deriving the corresponding public inputs.
This command performs the full local proof pipeline and generates:
This step is essential for validating circuit correctness before deployment.
npx zkarb-sdk test build/transfer input.json
deploynpx zkarb-sdk deploy <folder> <privateKey> [options]
βoptimized Enables verifier optimization and deploys an optimized wrapper contract.
βnetwork
βrpc
βbridge-l1 Enables cross-chain deployment with L1 β L2 relayer configuration.
Deploys the generated verifier.sol contract to the specified Arbitrum or Orbit network.
Depending on the flags provided, the command can perform standard, optimized, or cross-chain deployments. Deployment metadata and contract addresses are recorded for later reference.
npx zkarb-sdk deploy build/transfer 0xPRIVATE_KEY
npx zkarb-sdk deploy build/transfer 0xPRIVATE_KEY --network orbit --rpc http://localhost:8545
npx zkarb-sdk deploy build/transfer 0xPRIVATE_KEY --bridge-l1
npx zkarb-sdk compile circuit.circom
npx zkarb-sdk test build/circuit input.json
npx zkarb-sdk deploy build/circuit 0xPRIVATE_KEY
β Back to Index (index.md)