// the take
A TypeScript SDK for Stellar smart-contract wallets secured by WebAuthn passkeys (secp256r1), with Ed25519 keys and policy contracts as alternate signer types, plus a server-side relayer client for fee-sponsored submission. It's for developers building Stellar/Soroban apps who want passwordless wallet onboarding without holding user keys or XLM for gas. Note: this specific repo is archived — active development moved to stellar/passkey-kit, so anyone finding it via search needs to repoint their remote.
The client/server split is enforced at the package-export level (passkey-kit/server can't be imported from browser code), so the relayer API key structurally can't end up in a client bundle. Wallet addresses are derived deterministically from the passkey credential id against a fixed deployer keypair, which means the common reconnect path needs zero indexer calls — a real engineering win over most account-abstraction SDKs that require an off-chain lookup service. The auth model (flat Signatures map, three signer kinds, SignerLimits co-signer requirements) is a sensible primitive set, and submission methods return a discriminated TransactionResult instead of throwing, which correctly separates 'your code is broken' from 'the chain rejected this.' The Rust contract has fuzz tests alongside the usual unit tests, which is more than most Soroban contracts bother with.
It's narrowly scoped to the Stellar/Soroban ecosystem, so none of this transfers if you're not already building there. The security model has sharp edges the SDK itself calls out rather than closes: the shared public deployer keypair is load-bearing for address derivation (override it and discovery breaks), and deploy front-running is only mitigated by connectWallet's live-signer check, with WASM-hash verification off by default. WebAuthn enforcement stops at User Presence, not User Verification, so biometric/PIN checks have to be bolted on at the app layer or a merely-unlocked device is enough to authorize. Production use leans on two external hosted services (OpenZeppelin's Relayer Channels for gas sponsorship, Mercury's indexer for signer discovery) that aren't self-hostable alternatives documented here, so you're trusting their uptime for core wallet functionality even though both are keyless.
We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →