← Protocols
Particle Network
Wallet / Auth·EVM · Solana · Bitcoin · Multi-chain

Particle Network

01Description

Wallet abstraction (social login + MPC) and chain abstraction (Universal Accounts) in one SDK. Lets users hold a single account that pays gas and holds balances across EVM, Solana, and Bitcoin without manual bridging.

02Best for
  • 01chain abstraction / Universal Accounts
  • 02social login + MPC wallets
  • 03EVM + Solana + Bitcoin in one account
  • 04account abstraction (ERC-4337)
  • 05gas-sponsored UX
03Install
  • pnpm add @particle-network/connectkit viem@^2 @tanstack/react-query
04Environment variables
VariableScopeDescription
NEXT_PUBLIC_PARTICLE_PROJECT_IDClientParticle project ID from the dashboard.
NEXT_PUBLIC_PARTICLE_CLIENT_KEYClientParticle client key from the dashboard (browser-safe).
NEXT_PUBLIC_PARTICLE_APP_IDClientParticle app ID from the dashboard.
PARTICLE_SERVER_KEYServerParticle server key for backend RPC and admin calls. Never expose to the browser.
05Prompt snippet
Use Particle Connect for unified social + wallet login with chain abstraction. Create a config in `Connectkit.tsx` via `createConfig({ projectId, clientKey, appId, chains, walletConnectors: [authWalletConnectors(), evmWalletConnectors(), solanaWalletConnectors()] })` from `@particle-network/connectkit`, then wrap the app in `<ConnectKitProvider config={config}>`. Trigger the modal with the `useConnectKit()` hook (`connect()`) and read state via `useAccount()`, `usePublicClient()`, `useWallets()`. For Universal Accounts (chain-abstracted balances), wrap with `<UniversalAccountProvider>` and use `useUniversalAccount()` to send a single tx that auto-routes assets across chains.
06Gotchas
  • All three keys (projectId, clientKey, appId) must come from the *same* project in the dashboard — mixing keys from different projects fails with cryptic signature errors.
  • Universal Accounts are EVM-first; Solana/Bitcoin support is a separate connector and not all chain-abstraction routes are available cross-VM yet.
  • Particle's smart-account flavor is configurable (SimpleAccount, BiconomyV2, Cyber, Light) — the resulting smart-wallet address differs per flavor, so picking the wrong one mid-project orphans user assets.
  • Whitelist your domain in the dashboard; otherwise the connect modal silently fails on production deploys with no console error.
  • Mobile WebView OAuth is restricted — use the React Native SDK or external-browser flow instead of embedding social login in a WebView.
07Alternatives