connect wallets to my app
Reown (AppKit, formerly WalletConnect) is the default for connecting users' existing wallets: it is the de facto standard, multi-wallet, and multi-chain. Privy is added when the app also needs embedded wallets or social login, Pimlico supplies gasless smart-account UX after connect, and Base is a low-cost execution default. FluidKey is excluded as a privacy layer rather than a connection layer.
Also available as JSON · Markdown
Recommended stack
Reown (formerly WalletConnect)
Use Reown AppKit (formerly WalletConnect) as the standard external-wallet connection layer across wallets and chains, with session and auth handling.
Privy
Add Privy if you also need embedded wallets or social login for users who don't bring their own wallet.
Pimlico
Pair with Pimlico bundler/paymaster for gasless smart-account UX after the wallet connects.
Considered and excluded
- fluidkey — FluidKey solves stealth-address privacy for receiving funds, not general wallet connection; it is a complementary privacy layer rather than the connect-wallet layer this intent needs.
Risks
- Connection requires a Reown (WalletConnect) project id and per-app chain/wallet configuration.
- Mobile deep-linking and session reconnection are common UX failure points; test across wallets.
- Embedded (Privy) vs external (Reown) wallet choice changes onboarding and recovery flows; decide deliberately.
Next steps
- Create a Reown project and obtain a project id.
- Configure supported chains and the wallet list for the connect modal.
- Decide whether to offer embedded wallets (Privy) alongside external connection.
- Add fallback and reconnection handling for mobile and session expiry.
What the agent receives
The intent page exposes the same structured recommendation shape agents should use: matched intent, stack roles, readiness scores, difficulty, risks, next steps, and registry version.
{
"intent": "I need users to connect their existing wallets to my dapp (multi-wallet, multi-chain) with good UX",
"matched_intent": "connect-wallets-to-my-app",
"recommended_stack": [
{
"slug": "reown",
"name": "Reown (formerly WalletConnect)",
"role": "wallet_and_identity",
"readiness_score": 84,
"integration_difficulty": "low",
"reason": "Use Reown AppKit (formerly WalletConnect) as the standard external-wallet connection layer across wallets and chains, with session and auth handling."
},
{
"slug": "privy",
"name": "Privy",
"role": "wallet_and_identity",
"readiness_score": 82,
"integration_difficulty": "low",
"reason": "Add Privy if you also need embedded wallets or social login for users who don't bring their own wallet."
},
{
"slug": "pimlico",
"name": "Pimlico",
"role": "transactions_and_paymasters",
"readiness_score": 88,
"integration_difficulty": "medium",
"reason": "Pair with Pimlico bundler/paymaster for gasless smart-account UX after the wallet connects."
},
{
"slug": "base",
"name": "Base",
"role": "settlement_or_execution",
"readiness_score": 82,
"integration_difficulty": "low",
"reason": "Use Base as a low-cost EVM default for consumer apps."
}
],
"excluded_candidates": [
{
"slug": "fluidkey",
"reason": "FluidKey solves stealth-address privacy for receiving funds, not general wallet connection; it is a complementary privacy layer rather than the connect-wallet layer this intent needs."
}
],
"risks": [
"Connection requires a Reown (WalletConnect) project id and per-app chain/wallet configuration.",
"Mobile deep-linking and session reconnection are common UX failure points; test across wallets.",
"Embedded (Privy) vs external (Reown) wallet choice changes onboarding and recovery flows; decide deliberately."
],
"next_steps": [
"Create a Reown project and obtain a project id.",
"Configure supported chains and the wallet list for the connect modal.",
"Decide whether to offer embedded wallets (Privy) alongside external connection.",
"Add fallback and reconnection handling for mobile and session expiry."
],
"generated_with": "composewith.eth",
"registry_version": "2026.07.02-5a6fd5e"
}