Se provieni da @solana/web3.js (legacy), @solana/wallet-adapter-*,
o dai precedenti pacchetti framework-kit (@solana/client, @solana/react-hooks,
@solana/web3-compat), ti consigliamo di migrare ai plugin @solana/kit o a
@solana/web3.js v3 (o superiore).
Questa pagina mappa i concetti che già conosci sui loro equivalenti in Kit.
Mappatura dei concetti
| web3.js (legacy) / wallet-adapter | Kit |
|---|---|
new Connection(url) | createSolanaRpc(url), oppure .use(solanaRpc({ rpcUrl })) su un client |
PublicKey | Address — converti una stringa con address("...") |
Keypair | generateKeyPairSigner() o i plugin @solana/kit-plugin-signer |
SystemProgram.transfer(...) | getTransferSolInstruction(...) da @solana-program/system |
LAMPORTS_PER_SOL math | lamports(...) da @solana/kit |
Transaction / VersionedTransaction | Messaggi di transazione costruiti e pianificati dal transaction planner |
sendAndConfirmTransaction(...) | client.sendTransaction([...]) (il planner firma, invia e conferma) |
@solana/wallet-adapter-* | @solana/kit-plugin-wallet + scoperta tramite Wallet Standard |
web3.js v3 mantiene i nomi basati su classi indicati sopra — Connection, Keypair,
Transaction, PublicKey — come semplici wrapper sugli elementi interni di Kit, quindi la
colonna Kit descrive anche ciò che queste classi fanno internamente nella v3.
Provieni da web3.js?
Se gestisci una codebase di grandi dimensioni basata su @solana/web3.js (legacy) e una riscrittura completa
in Kit non è praticabile, web3.js v3 è il ponte. Installalo con
@solana/web3.js@3. Ricostruisce la classica API basata su classi — Connection,
Keypair, Transaction, PublicKey — sopra gli elementi interni di @solana/kit.
Poiché poggia su Kit, l'interoperabilità è stretta: PublicKey è il tipo di indirizzo
principale e il suo .toBase58() restituisce la stringa Address brandizzata di Kit, e un
Keypair v3 implementa il KeyPairSigner di Kit, quindi puoi passarlo direttamente alle API di Kit,
ai plugin e ai client generati da Codama.
Transazioni v1 e web3.js (legacy)
Se invii transazioni v1 con web3.js, devi usare la v3 o superiore.
Per la migrazione vera e propria, consulta la guida ufficiale alla migrazione da web3.js v1 a v3.
Portafogli
Kit non utilizza wallet-adapter. @solana/kit-plugin-wallet rileva i portafogli
Wallet Standard e li espone tramite client.wallet e gli
hook React. I portafogli moderni (Phantom,
Solflare, Backpack e altri) si pubblicizzano tramite Wallet Standard, quindi non
è necessario alcun pacchetto adattatore per singolo portafoglio.
Puoi anche utilizzare strumenti preconfigurati come @solana/connector, che usa direttamente le primitive di Kit per connettersi ai portafogli.
Stai ancora usando wallet-adapter?
Se gestisci un'app basata su @solana/wallet-adapter-* e non sei ancora
pronto a migrare, il repository wallet-adapter
rimane il riferimento per quello
stack. Per qualsiasi nuovo progetto, preferisci il plugin wallet di Kit.
Dove andare dopo
- Client Kit — assembla un client dai plugin.
- React — binding
@solana/reacte hook per i portafogli. - Tutorial Next.js — un'app completa dall'inizio alla fine.
Is this page helpful?