Passkey-powered cross-chain mobile wallet with unified balances & ENS subnames.
Prisma Wallet is a React Native (Expo) passkey (WebAuthn) powered crypto wallet delivering unified, real‑time balances and intent-based cross‑chain bridging through the Avail Nexus SDK. Each user automatically receives a human-readable ENS subname (e.g. alice.prisma.eth) to simplify sharing and identity. The app aggregates assets across testnet EVM chains, exposes a streamlined bridge UI with fee transparency, and gracefully degrades when gRPC fee/solver endpoints are unreachable in mobile contexts. It pioneers passkey compatibility in a stack still expecting legacy ECDSA signatures, documenting a path forward for native WebAuthn support while providing a temporary deterministic signature workaround. Focus areas: UX clarity, identity, interoperability, and secure key handling without seed phrases.
Built with Expo + React Native (Hermes engine) and TypeScript, the wallet layers a strict provider hierarchy: Gesture / SafeArea / Auth (MMKV) / Wagmi (Porto passkey accounts) / React Query / Theming (Ignite + Uniwind) / HeroUI Native / Navigation. Avail Nexus SDK supplies unified balance aggregation and bridging; we patched its login flow to handle passkey (WebAuthn P256) signatures by injecting a deterministic ECDSA surrogate while proposing upstream fixes. ENS subnames are registered via a planned NameWrapper/manager contract flow; resolution is cached locally. Styling uses semantic tokens (no hard-coded colors) and wrapped icons for className support. React Query manages server/cache state; MMKV offers encrypted instant storage. gRPC limitations in RN are mitigated by fallback mocks for protocol & solver fees, with a roadmap for a proxy service. Tooling includes Wagmi hooks, Porto’s passkey connector, Uniwind utility class merging, and automated theming. The result: a performant, identity-centric, interoperability wallet prototype highlighting next-gen key UX.

