phantom-connect

Solid

Build wallet-connected applications with the Phantom Connect SDK for Solana. Use when integrating Phantom wallets into React, React Native, or vanilla JS/TS apps — including wallet connection, social login (Google/Apple), transaction signing, message signing, token-gated access, crypto payments, and NFT minting. Covers @phantom/react-sdk, @phantom/react-native-sdk, and @phantom/browser-sdk.

Web & Frontend 126 stars 79 forks Updated 2 weeks ago Apache-2.0

Install

View on GitHub

Quality Score: 84/100

Stars 20%
70
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Phantom Connect SDK Build wallet-connected Solana applications with the Phantom Connect SDK ecosystem. ## SDK Selection | Platform | SDK | Package | |----------|-----|---------| | React web apps | React SDK | `@phantom/react-sdk` | | React Native / Expo | React Native SDK | `@phantom/react-native-sdk` | | Vanilla JS / Vue / Angular | Browser SDK | `@phantom/browser-sdk` | ## Prerequisites 1. **Phantom Portal Account** — Register at [phantom.com/portal](https://phantom.com/portal) 2. **App ID** — Get from Portal → App → Set Up 3. **Allowlisted URLs** — Add domains and redirect URLs in Portal ## Auth Providers | Provider | Description | Requires appId | |----------|-------------|----------------| | `"injected"` | Phantom browser extension | No | | `"google"` | Google OAuth (embedded wallet) | Yes | | `"apple"` | Apple ID (embedded wallet) | Yes | ## Critical Rules 1. **Always use `signAndSendTransaction`** — `signTransaction` and `signAllTransactions` are NOT supported for embedded wallets 2. **Always use `LAMPORTS_PER_SOL`** from `@solana/web3.js` for amount conversion — never hardcode `1000000000` 3. **Wrap all async SDK calls in try-catch** — users can reject prompts at any time 4. **Check `isConnected` before signing** — verify wallet connection before any operation 5. **React Native: `react-native-get-random-values` must be the FIRST import** — before any other imports 6. **BrowserSDK must be a singleton** — create one instance per app, never multiple 7. **Impor...

Details

Author
sendaifun
Repository
sendaifun/skills
Created
7 months ago
Last Updated
2 weeks ago
Language
TypeScript
License
Apache-2.0

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category