โ Back to Wallet Adapters
Jupiter Unified Wallet Kit
The Swiss Army Knife wallet adapter used by Jupiter and Meteora
Installation
npm install @jup-ag/wallet-adapter \ @lazorkit/wallet
Provider Setup
import { useEffect } from 'react';
import { ConnectionProvider } from '@solana/wallet-adapter-react';
import {
UnifiedWalletProvider,
UnifiedWalletButton
} from '@jup-ag/wallet-adapter';
import { registerLazorkitWallet } from '@lazorkit/wallet';
const RPC_URL = 'https://api.devnet.solana.com';
function AppProvider({ children }) {
// Register LazorKit on mount
useEffect(() => {
registerLazorkitWallet({
rpcUrl: RPC_URL,
portalUrl: 'https://portal.lazor.sh',
paymasterConfig: {
paymasterUrl: 'https://kora.devnet.lazorkit.com',
},
clusterSimulation: 'devnet',
});
}, []);
return (
<ConnectionProvider endpoint={RPC_URL}>
<UnifiedWalletProvider
wallets={[]}
config={{
autoConnect: true,
env: 'devnet',
metadata: {
name: 'My App',
description: 'My Solana dApp',
url: 'https://myapp.com',
iconUrls: ['https://myapp.com/icon.png'],
},
theme: 'dark', // 'light', 'dark', or 'jupiter'
}}
>
{children}
</UnifiedWalletProvider>
</ConnectionProvider>
);
}Using the Hooks
import { useWallet, useConnection } from
'@solana/wallet-adapter-react';
import { UnifiedWalletButton } from
'@jup-ag/wallet-adapter';
function MyComponent() {
const { publicKey, connected, sendTransaction } = useWallet();
const { connection } = useConnection();
const handleSend = async () => {
// Build your transaction
const tx = new Transaction().add(...instructions);
// Send via the adapter (works with any wallet!)
const signature = await sendTransaction(tx, connection);
console.log('Sent:', signature);
};
return (
<div>
{/* Jupiter-styled connect button */}
<UnifiedWalletButton />
{connected && (
<button onClick={handleSend}>Send TX</button>
)}
</div>
);
}Key Points
- โJupiter-powered: Used by Jupiter and Meteora in production
- โMultiple Themes: Light, Dark, and Jupiter themes built-in
- โWallet Standard: Automatically discovers LazorKit after registration
- โMobile Ready: Built-in Mobile Wallet Adapter support
- โGasless for LazorKit: Paymaster auto-handles gas when using LazorKit
Theme Options
dark- Dark theme (active)light- Light themejupiter- Jupiter brand themeJupiter Unified Wallet Kit Theme
Try Gasless Transfer
๐ธ
Connect Your Wallet
Click the button below to open the Unified Wallet modal. LazorKit will appear alongside other installed wallets.