@arcium-hq/client
v0.10.4
Published
Client SDK for interacting with encrypted Solana programs
Downloads
5,603
Maintainers
Readme
When To Use
- Encrypting inputs for Arcium computations
- Deriving Arcium PDAs from TypeScript
- Waiting for computation finalization and interacting with Arcium account state
Requirements
- Node.js
>=20.18.0 @anchor-lang/core1.0.2
Installation
npm install @arcium-hq/client @anchor-lang/coreQuick Start
import * as anchor from "@anchor-lang/core";
import {
awaitComputationFinalization,
getArciumEnv,
getCompDefAccOffset,
getComputationAccAddress,
getMempoolAccAddress,
getMXEAccAddress,
} from "@arcium-hq/client";
const env = getArciumEnv();
const computationAddress = getComputationAccAddress(
env.arciumClusterOffset,
new anchor.BN(1),
);
const compDefOffset = getCompDefAccOffset("my_circuit");
const mempool = getMempoolAccAddress(env.arciumClusterOffset);
// `mxeProgramId` is the PublicKey of your Anchor program that hosts the MXE.
const mxe = getMXEAccAddress(mxeProgramId);Main Exports
| Area | Description |
|------|-------------|
| Cryptography | Rescue/AES helpers, hashing, and X25519 utilities. |
| createPacker() | Pack and unpack circuit inputs and outputs. |
| PDA helpers | Derive computation, mempool, MXE, cluster, and comp-def addresses. |
| awaitComputationFinalization() | Poll for finalized computations. |
| IDL exports | Generated Arcium program types and constants. |
