Run it locally
Requirements
Section titled “Requirements”- Rust with the Solana platform tools (
cargo build-sbf), and rustc 1.98 or newer for the LiteSVM tests - Anchor 1.2.2 for the IDL
- Node 20 or newer
Build and test
Section titled “Build and test”export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
# LM-OTS against the RFC 8554 vectorscargo test -p lmots --features sign
# program binarycargo build-sbf --tools-version v1.58 --manifest-path programs/quantark/Cargo.toml --sbf-out-dir target/deploy
# program tests on LiteSVMcargo +1.98.1 test -p quantark --test flow -- --nocapture
# client checks, then the full flow on a local validator with Meteora's mainnet DBC binarycd app && npm run test:lib && npm run test:localnetRebuild the IDL after changing the program:
RUSTUP_TOOLCHAIN=1.98.1 ~/.avm/bin/anchor-1.2.2 idl build -p quantark -o target/idl/quantark.jsoncp target/idl/quantark.json app/lib/idl/Local preview
Section titled “Local preview”bash app/scripts/dev-localnet.shStarts a seeded validator with the canary fixtures, the basket, a launch config and sample coins, then serves the app on localhost:4810.
Deploy to devnet
Section titled “Deploy to devnet”bash app/scripts/devnet.shNeeds about 3.5 devnet SOL on the deployer key. It deploys the program, seeds the basket and launch config against Qanary’s devnet canary, and writes app/.env.production.local.
| Variable | Meaning |
|---|---|
NEXT_PUBLIC_RPC |
RPC endpoint. Use a dedicated one for full holder data |
NEXT_PUBLIC_CLUSTER |
devnet, localnet or mainnet-beta, used for explorer links |
NEXT_PUBLIC_DBC_CONFIG |
QuantArk’s Meteora DBC launch config |
NEXT_PUBLIC_COMPONENT_LABELS |
JSON map of component mint to display name |