
Unified Wallet Kit is an open-sourced, Swiss Army Knife wallet adapter, striving for the best wallet integration experience for developers, and best wallet experience for your users.
Along with Terminal, it's the fastest way to get started on Solana.
Used by Jupiter and Meteora.
NPM: https://www.npmjs.com/package/@jup-ag/wallet-adapter
Why not just use the existing wallet adapters?
@solana/wallet-adapter-base, @solana/wallet-adapter-react and @solana-mobile/wallet-adapter-mobile, you are always welcomed to onboard or depart.[x] Internationalization (i18n)
More contributions required for more languages
[x] New user onboarding on Jupiter Station
pnpm i @jup-ag/wallet-adapter<UnifiedWalletProvider /> and pass in as little to as many wallets you would like to support.ExampleBaseOnly.tsxconst ExampleBaseOnly = () => {
return (
<UnifiedWalletProvider
wallets={[]}
config={{
autoConnect: false,
env: 'mainnet-beta',
metadata: {
name: 'UnifiedWallet',
description: 'UnifiedWallet',
url: 'https://jup.ag',
iconUrls: ['https://jup.ag/favicon.ico'],
},
notificationCallback: WalletNotification,
walletlistExplanation: {
href: 'https://station.jup.ag/docs/additional-topics/wallet-list',
},
}}
>
<UnifiedWalletButton />
</UnifiedWalletProvider>
);
};
export default ExampleBaseOnly;
src/components/examples
config={{
walletAttachments: {
'Phantom': {
attachment:
Auto Confirm
}
}
}}
Why not ship with all wallets?
Unnecessary bloat and bundle size on your dApp
And hopefully, a gradually disappearing list of installed wallet adapter, as they migrate to wallet-standard
Why not ship with notification by default
Existing dApp might already have their own notification system
Checkout src/components/examples/WalletNotification.tsx for an example of how to use the notification system
How to add/develop a new wallet?

$ claude mcp add Unified-Wallet-Kit \
-- python -m otcore.mcp_server <graph>