Skip to main content
@calm-xyz/react is how you embed the Calm onramp in a React app. Pick the provider that matches how your app already signs users in:
Mount the provider inside your <QueryClientProvider> and your auth/wallet stack, and only once a wallet is connected — gate it on your app’s connection state. Set up wrong (no query client, the wrong wallet stack, or no connected wallet) it throws a clear error at mount rather than failing silently.
Once mounted, drop a <CalmOnramp> anywhere in the tree and wrap a trigger element — clicking it opens the deposit modal.