← Protocols
Dynamic
Wallet / Auth·EVM · Solana · Bitcoin

Dynamic

01Description

Wallet auth and embedded wallets with social, email, and passkey login. Supports EVM, Solana, and Bitcoin from one provider.

02Best for
  • 01consumer apps
  • 02embedded wallets
  • 03email/social login
  • 04multi-chain auth
  • 05MPC wallets
03Install
  • pnpm add @dynamic-labs/sdk-react-core @dynamic-labs/ethereum @dynamic-labs/solana @dynamic-labs/wagmi-connector
04Environment variables
VariableScopeDescription
NEXT_PUBLIC_DYNAMIC_ENVIRONMENT_IDClientDynamic environment ID from the Dynamic dashboard.
05Prompt snippet
Use Dynamic for authentication and embedded wallet creation. Wrap the app in `DynamicContextProvider` with `environmentId` from `NEXT_PUBLIC_DYNAMIC_ENVIRONMENT_ID`. Read auth state via `useDynamicContext()` (`primaryWallet`, `user`, `sdkHasLoaded`). Configure wallet connectors for EthereumWalletConnectors and SolanaWalletConnectors as needed.
06Gotchas
  • Always gate UI on `sdkHasLoaded` before reading `primaryWallet` to avoid flicker.
  • Embedded-wallet-only environments cannot connect external wallets — match environment to your auth strategy.
  • Server-side: verify Dynamic JWT via `verifyDynamicJWT` rather than trusting client-supplied addresses.
  • Mobile webviews need explicit deep-link config in the Dynamic dashboard.
07Alternatives