Mejores prácticas de @solana/kit
Un resumen condensado de 25 prácticas para clientes de @solana/kit 7.0.0 en producción.
Busca en todas las páginas de la documentación
Un resumen condensado de 25 prácticas para clientes de @solana/kit 7.0.0 en producción.
Fija @solana/kit@7.0.0: Bloquea la versión principal en package.json y CI; las tipificaciones RPC cambian entre versiones menores (Conceptos básicos de @solana/kit).
Importa de forma selectiva: Usa exportaciones de subrutas y paquetes de programas para mantener pequeños los paquetes.
Siempre .send() las llamadas RPC: Los constructores son perezosos hasta que se envían.
Usa bigint para lamports: Nunca uses números de punto flotante para SOL en la UI o servidores.
Separa las URLs de HTTP y WSS: Las suscripciones necesitan puntos de conexión wss:// (RPC y suscripciones).
Aborta las suscripciones de WebSocket: Limpia al desmontar React y al cambiar de ruta.
Obtén blockhashes frescos por envío: Las vidas útiles obsoletas son el principal fallo de confirmación.
Simula antes de solicitar la billetera: Evita que los usuarios paguen por errores predecibles (Firma y envío).
Establece explícitamente los firmantes del pagador de tarifas: Las direcciones solas no firman (Keypairs y firmantes).
Antepón las instrucciones del presupuesto de cómputo: Las tarifas de prioridad y los límites de CU pertenecen al principio del mensaje.
Prefiere mensajes de versión 0: Predeterminado para ALTs y validadores modernos.
Genera codecs a partir de IDL: Los layouts escritos a mano se desvían de los programas Anchor 0.32.1 (Codecs y serialización).
Regenera los clientes de Codama en CI: Falla las compilaciones cuando el IDL cambia las carpetas generadas.
Usa el RPC del proveedor para producción: Los puntos de conexión públicos limitan las tasas; usa URLs con clave.
Ajusta el compromiso al riesgo: confirmed para UX; finalized para lecturas de tesorería.
Nunca incrustes secretos de mainnet en el frontend: El código del navegador es público; usa billeteras o patrocinio de servidor.
Registra firmas y enlaces de explorador: Los tickets de soporte necesitan IDs de transacción rastreables.
Maneja los rechazos de billetera con gracia: Los usuarios cancelan conexiones y firmas; muestra una UX de reintento clara.
Migra de web3.js por ruta: Las pilas duales duplican el tamaño del paquete y los errores (Migración desde web3.js v1).
Usa sendAndConfirmTransactionFactory con WSS: Los bucles de confirmación solo HTTP son frágiles bajo carga.
Comprime con datos ALT frescos: Recarga las cuentas de la tabla de búsqueda antes de compressTransactionMessageUsingAddressLookupTables.
Tipifica las direcciones con address(): Detecta base58 inválido en la construcción.
Prueba contra Surfpool 0.12.0: Ejecuciones locales compatibles con Agave antes de gastar en devnet.
Documenta las capacidades de RPC: DAS, APIs de tarifas de prioridad y simulación difieren según el proveedor.
Mantén alineadas las versiones de billetera y kit: Las plantillas create-solana-dapp rastrean pares compatibles de adaptadores + kit.
Sí; web3.js v1 es obsoleto para TypeScript nuevo.
No; acelera el arranque, pero kit es la dependencia principal.
Normalmente, una fábrica HTTP + una WSS reutilizadas a través del contexto.
Audita con tu empaquetador; el tree-shaking solo funciona con importaciones selectivas.
Variables de entorno por despliegue; nunca codifiques URLs de mainnet en componentes compartidos.
Versiones de la pila: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0 y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 19 jul 2026