Migración a Kit

Si vienes de @solana/web3.js (legacy), @solana/wallet-adapter-*, o de los paquetes anteriores de framework-kit (@solana/client, @solana/react-hooks, @solana/web3-compat), te recomendamos migrar a los plugins de @solana/kit o a @solana/web3.js v3 (o superior).

Esta página relaciona los conceptos que ya conoces con sus equivalentes en Kit.

Correspondencia de conceptos

web3.js (legacy) / wallet-adapterKit
new Connection(url)createSolanaRpc(url), o .use(solanaRpc({ rpcUrl })) en un cliente
PublicKeyAddress — convierte un string con address("...")
KeypairgenerateKeyPairSigner() o los plugins de @solana/kit-plugin-signer
SystemProgram.transfer(...)getTransferSolInstruction(...) de @solana-program/system
LAMPORTS_PER_SOL mathlamports(...) de @solana/kit
Transaction / VersionedTransactionMensajes de transacción construidos y empaquetados por el planificador de transacciones
sendAndConfirmTransaction(...)client.sendTransaction([...]) (el planificador firma, envía y confirma)
@solana/wallet-adapter-*@solana/kit-plugin-wallet + descubrimiento mediante Wallet Standard

web3.js v3 mantiene los nombres basados en clases indicados arriba (Connection, Keypair, Transaction, PublicKey) como wrappers ligeros sobre los componentes internos de Kit, por lo que la columna de Kit también describe lo que hacen esas clases internamente en la v3.

¿Vienes de web3.js?

Si mantienes una base de código grande de @solana/web3.js (legacy) y una reescritura completa a Kit no es viable, web3.js v3 es el puente. Instálalo con @solana/web3.js@3. Reconstruye la API clásica basada en clases (Connection, Keypair, Transaction, PublicKey) sobre los componentes internos de @solana/kit. Al estar construido sobre Kit, la interoperabilidad es estrecha: PublicKey es el tipo de dirección principal y su método .toBase58() devuelve el string Address con marca (branded) de Kit, y un Keypair de la v3 implementa el KeyPairSigner de Kit, por lo que puedes pasarlo directamente a las API de Kit, a los plugins y a los clientes generados con Codama.

Transacciones v1 y web3.js (legacy)

Si envías transacciones v1 con web3.js, debes usar la v3 o superior.

Para la migración en sí, consulta la guía oficial de migración de web3.js v1 a v3.

Wallets

Kit no utiliza wallet-adapter. @solana/kit-plugin-wallet descubre las wallets de Wallet Standard y las expone a través de client.wallet y los hooks de React. Las wallets modernas (Phantom, Solflare, Backpack, entre otras) se anuncian a través de Wallet Standard, por lo que no se requiere ningún paquete adaptador por wallet.

También puedes utilizar herramientas prediseñadas como @solana/connector, que usa primitivas de Kit directamente para conectarse a las wallets.

¿Todavía usas wallet-adapter?

Si mantienes una aplicación desarrollada con @solana/wallet-adapter-* y aún no estás listo para migrar, el repositorio de wallet-adapter sigue siendo la referencia para ese stack. Para cualquier proyecto nuevo, se recomienda el plugin de wallet de Kit.

Qué hacer a continuación

Is this page helpful?

Tabla de Contenidos

Editar Página