Build

Configuration

SembolConfig fields, the testnet preset, relayer requirements, and environment overrides.

View raw

SEMBOL_TESTNET_ARTIFACTS is a complete, working testnet preset: RPC, network passphrase, the deployed contract hashes, and a public fee relayer. Spread it and override any field.

ts
import { SEMBOL_TESTNET_ARTIFACTS, type SembolConfig } from "@sembol/passkey-react";

const config: SembolConfig = {
  ...SEMBOL_TESTNET_ARTIFACTS,
  appName: "My App",            // shown in the passkey prompt
  relayerUrl: process.env.NEXT_PUBLIC_RELAYER_URL
    ?? SEMBOL_TESTNET_ARTIFACTS.relayerUrl,
};

Fields

FieldPurpose
rpcUrlSoroban RPC endpoint
networkPassphraseStellar network. Drives explorer links and network display
accountWasmHashSmart account contract wasm hash to deploy
webauthnVerifierAddressOn-chain secp256r1 verifier used by passkey signatures
ed25519VerifierAddressVerifier for Ed25519 backup signers
spendingLimitPolicyAddressPolicy contract behind the spending limit feature
nativeTokenContractXLM SAC address. Derived from the passphrase when omitted
relayerUrlFee relayer endpoint. Required for wallet creation since smart-account-kit 0.5.0
appNameName in the passkey prompt. Defaults to "Stellar App"
rpIdWebAuthn relying party id. Defaults to the current domain
webAuthnHintsPasskey UI ordering hints, e.g. ["client-device", "hybrid"]

The relayer requirement

Since smart-account-kit 0.5.0, the shared deployer is sign-only: wallet creation must go through a fee relayer, there is no RPC fallback. The testnet preset points at the public SDF relayer proxy, so testnet works with zero setup. Mainnet currently requires running your own relayer; Sembol Cloud, a hosted option, is in the works.

Session persistence

Sessions persist in IndexedDB by default, so a reload silently reconnects. Inject your own storage adapter or a prebuilt kit instance through the provider for tests and advanced setups.