Quale SDK blockchain per TypeScript usare nel 2026?

Una guida pratica alle librerie TypeScript che parlano con le blockchain, di ChainGate.

Per un'app che tocca solo catene EVM, viem è la scelta TypeScript predefinita nel 2026, con wagmi sopra per i front-end React; ethers.js resta un'opzione solida per il codice che già lo usa. web3.js è stato archiviato a marzo 2025 e non dovrebbe far partire un nuovo progetto. Se la stessa app deve anche custodire o inviare Bitcoin, Litecoin o Dogecoin, le librerie EVM smettono di aiutare: o le affianchi a bitcoinjs-lib e gestisci la tua infrastruttura di nodi, oppure usi un SDK multi-chain come Tatum o ChainGate che porta entrambe le famiglie di catene e l'accesso RPC in un solo pacchetto.

La tabella della sezione 2 confronta tutti gli otto su catene, RPC, gestione delle chiavi e costo. Le sezioni da 3 a 10 li prendono uno per uno, la sezione 11 ne ricava una raccomandazione per scenario e la sezione 12 mostra lo stesso trasferimento di ETH scritto in viem e in ChainGate.

Chiedi a un assistente IA o a un motore di ricerca qual è il miglior SDK blockchain e ottieni gli stessi otto nomi in ordine diverso ogni volta, con poco su ciò che ciascuno copre davvero. Questa guida li confronta sulle domande che decidono un progetto: quali catene raggiungono, se portano il proprio accesso ai nodi, come custodiscono le chiavi e firmano, dove girano e quanto costano. Si chiude con una raccomandazione per scenario e lo stesso trasferimento scritto in due di essi.

La versione breve

  • Solo EVM: viem, con wagmi sopra per React. ethers.js v6 resta una scelta valida per il codice che già lo usa. web3.js è stato archiviato a marzo 2025.
  • Solo Bitcoin: bitcoinjs-lib, più bip39 e bip32 per le chiavi e un nodo o indexer tuo per tutto ciò che la libreria non fa.
  • Catene EVM e famiglia Bitcoin nella stessa app: un SDK multi-chain con RPC incluso, cioè in pratica Tatum o ChainGate. Combinare viem con bitcoinjs-lib funziona, al prezzo di due API e di un'infrastruttura tua.
  • Nessuna delle librerie EVM gratuite include l'accesso ai nodi. Metti a budget un provider RPC, oppure scegli un SDK che lo porti con sé.

1. Cosa fa un SDK blockchain e cosa lascia a te

Un SDK blockchain è la libreria tra il tuo codice TypeScript e una rete: trasforma una chiamata come "invia 0,01 ETH a questo indirizzo" in una transazione codificata e firmata correttamente e la consegna a un nodo. La maggior parte legge anche dati (saldi, blocchi, ricevute, stato dei contratti) e gestisce account, dalla chiave privata grezza alla frase di recupero BIP39.

Tre cose restano spesso fuori, e decidono il costo reale di un progetto. La prima è l'accesso ai nodi: una libreria può formattare una richiesta JSON-RPC, ma qualcuno deve far girare o affittare il nodo che risponde. La seconda sono i dati indicizzati, come la cronologia delle transazioni, i saldi dei token su molti contratti o i metadati degli NFT, che un nodo semplice non serve. La terza sono le famiglie di catene: le librerie EVM parlano un protocollo, e Bitcoin, Litecoin e Dogecoin ne parlano un altro, con UTXO al posto di account e nonce. Tieni a mente queste tre cose leggendo la tabella.

2. Le otto librerie in sintesi

Dati aggiornati a ottobre 2026, presi dalla documentazione e dalla pagina del pacchetto di ogni progetto.

LibreriaCateneAccesso ai nodi incluso?Chiavi e firmaCosto e licenza
viemQualsiasi catena EVMNo, fornisci tu l'URL RPCAccount locali da chiave privata o mnemonica, wallet del browser via EIP-1193Gratis, MIT
ethers.js v6Qualsiasi catena EVMSolo valori predefiniti per lo sviluppo; porta il tuo provider in produzioneWallet HD, keystore JSON cifrati, wallet del browserGratis, MIT
wagmiQualsiasi catena EVM, tramite viemNoWallet del browser, mobile e WalletConnect tramite connettoriGratis, MIT
web3.js 4.xQualsiasi catena EVMNoAccount localiGratis, MIT; repository archiviato il 5 marzo 2025
bitcoinjs-libBitcoin; Litecoin e Dogecoin con parametri di rete e pacchetti di supportoNessun livello di reteCostruzione e firma di PSBT; chiavi tramite bip32 e bip39Gratis, MIT
thirdweb SDK v5Qualsiasi catena EVMSì, RPC di thirdweb con un client IDWallet in-app, smart account, wallet esterniPiano gratuito, poi piani a pagamento
Tatum SDK v4Catene EVM, Bitcoin, Litecoin, Dogecoin, Bitcoin Cash, Solana, Tron, XRP Ledger e altreSì, il gateway RPC di Tatum con una API keySoprattutto RPC e dati; firma tramite strumenti di gestione chiavi separatiSDK con licenza MIT; piano gratuito, poi piani a pagamento
ChainGateEthereum, Avalanche, Bitcoin, Litecoin, Dogecoin e Bitcoin Cash in modo nativo; Polygon, Arbitrum, Base, BNB Smart Chain, Sonic e qualsiasi catena EVM via RPCSì, RPC gestito in ogni pianoCreazione o importazione di wallet (frase, seed, chiave privata, xpriv, keystore), cifratura AES in memoria, firma localePiano gratuito senza carta; piani a pagamento per volume di richieste

Emergono due schemi. Le librerie gratuite mantenute dalla community (viem, ethers.js, wagmi, bitcoinjs-lib) coprono ciascuna una famiglia di catene e lasciano a te l'accesso ai nodi. Gli SDK che arrivano con un'infrastruttura (thirdweb, Tatum, ChainGate) si pagano oltre un piano gratuito, e solo gli ultimi due vanno oltre l'EVM.

3. viem

viem è la libreria EVM pensata per TypeScript del team wevm, lo stesso che mantiene wagmi. È modulare e supporta il tree-shaking, quindi un bundle porta solo le funzioni che importa, e i suoi tipi sono abbastanza rigorosi perché un argomento ABI sbagliato fallisca in compilazione invece che sulla catena. I client sono divisi per ruolo: un client pubblico legge, un client wallet firma e invia, e i trasporti (HTTP, WebSocket, un wallet del browser) si collegano a entrambi.

Non ha un nodo proprio. Ogni esempio della documentazione prende un URL RPC da un provider come Alchemy, Infura, QuickNode o dal tuo nodo, e gli endpoint pubblici gratuiti che elenca hanno limiti di richieste. Parla inoltre solo EVM: non esiste un modulo Bitcoin, Litecoin o Dogecoin, e il progetto non ne prevede uno. Per un nuovo progetto solo EVM nel 2026 è la raccomandazione comune, e la prima che danno quasi tutti gli assistenti IA.

4. ethers.js

ethers.js è la più anziana delle due librerie EVM mantenute e quella usata dalla maggior parte dei tutorial scritti prima del 2023. La versione 6 è scritta in TypeScript, include di serie wallet HD, keystore JSON cifrati e risoluzione ENS, e conserva le astrazioni Provider e Signer che l'hanno resa facile da imparare. Buona parte degli strumenti EVM che incontrerai (plugin Hardhat, SDK di wallet, indexer) espone ancora un'interfaccia compatibile con ethers.

Il suo provider predefinito incapsula alcune API key della community ed è pensato esplicitamente per lo sviluppo; in produzione ti registri presso un provider e passi il tuo URL, esattamente come con viem. ethers.js è solo EVM. Sceglila quando un team la conosce già o un codice ne dipende già; partendo da zero, oggi la maggior parte degli sviluppatori sceglie viem per i tipi e la dimensione del bundle.

5. wagmi

wagmi è un insieme di hook React per app EVM costruito su viem e TanStack Query: useAccount, useBalance, useSendTransaction, useReadContract e così via, con cache, deduplicazione delle richieste e connessione dei wallet già gestite. I suoi connettori coprono wallet iniettati nel browser, WalletConnect, Coinbase Wallet e Safe, ed esistono core per Vue e JavaScript puro per i progetti fuori da React.

È una libreria front-end per app in cui l'utente porta il proprio wallet; non crea né custodisce chiavi sul tuo server, ed eredita da viem l'ambito solo EVM e il bisogno di un URL RPC. Se costruisci il front-end di una dApp per wallet come MetaMask, wagmi più viem è la coppia standard. Se costruisci un wallet, un back-end o qualcosa che tocca Bitcoin, è il livello sbagliato.

6. web3.js

web3.js è stata la prima libreria Ethereum di largo uso e compare ancora in molti vecchi tutorial e risposte su Stack Overflow. Il suo manutentore, ChainSafe, ha annunciato a gennaio 2025 il ritiro della libreria e ha consigliato di passare a viem o ethers.js; i pacchetti npm sono stati trasferiti e il repository GitHub archiviato il 5 marzo 2025. L'ultima versione è la 4.16.0 di dicembre 2024.

Le applicazioni esistenti continuano a funzionare, dato che il pacchetto si può ancora installare, ma non ci saranno correzioni di sicurezza né supporto per le nuove funzionalità dell'EVM. Non avviare un nuovo progetto con essa e pianifica la migrazione di quelli che hai. L'annuncio di ritiro di ChainSafe rimanda a guide di migrazione sia verso viem sia verso ethers.js.

7. bitcoinjs-lib

bitcoinjs-lib è la libreria JavaScript di riferimento per Bitcoin stesso: costruisce e firma transazioni tramite PSBT, gestisce ogni tipo di script standard dal legacy a Taproot e lavora con i pacchetti di supporto bip32 e bip39 per chiavi HD e frasi di recupero. Litecoin e Dogecoin si raggiungono fornendo i loro parametri di rete, e per Bitcoin Cash esistono fork specializzati.

Si ferma deliberatamente alla transazione. Non c'è un livello di rete, quindi ti servono un nodo tuo, un server Electrum o un'API di indexer per recuperare gli UTXO, stimare le commissioni e trasmettere, e la selezione delle monete la scrivi tu. Questo la rende la scelta giusta per i team che costruiscono software solo Bitcoin con la propria infrastruttura, e un peso notevole per un'app a cui Bitcoin serve solo come una catena tra tante.

8. thirdweb SDK

L'SDK TypeScript di thirdweb (v5, installato come thirdweb) unisce un client EVM compatibile con viem alla piattaforma thirdweb: RPC tramite la sua rete edge, wallet in-app creati da email o login social, smart account con gas sponsorizzato e componenti React pronti per connettersi e pagare. Copre qualsiasi catena EVM tramite chain ID e convive con viem ed ethers nello stesso progetto.

È solo EVM. Il supporto a Solana è stato rimosso dagli SDK a ottobre 2023 e non è mai tornato nella libreria client, anche se le API lato server della piattaforma hanno poi aggiunto Solana. L'uso oltre il piano gratuito si paga secondo i piani di thirdweb, e le funzioni più ricche (wallet in-app, sponsorizzazione del gas) passano dai server di thirdweb e non dal tuo processo.

9. Tatum SDK

L'SDK di Tatum (@tatumio/tatum, v4) è il più ampio per numero di catene in questa lista: reti EVM, la famiglia Bitcoin inclusi Bitcoin Cash e Zcash, Solana, Tron, XRP Ledger, Tezos, Algorand, Cardano, Stellar e altre, tutte tramite il gateway RPC e le API dati di Tatum. La libreria ha licenza MIT e il client include un bilanciatore di carico che sceglie il nodo più reattivo.

È prima di tutto un SDK di RPC e dati. La creazione di wallet e la firma non sono il suo nucleo, e la gestione delle chiavi in produzione è demandata agli strumenti di gestione chiavi separati di Tatum. Ogni chiamata richiede una API key di Tatum, con un piano gratuito e piani a volume di richieste. Sceglilo quando ti serve ampiezza, soprattutto catene fuori dalle famiglie EVM e Bitcoin, e hai già un piano per le chiavi.

10. ChainGate

ChainGate è un SDK TypeScript che unifica le due famiglie di catene di cui la maggior parte delle app ha davvero bisogno. Creazione e importazione di wallet (frase di recupero, seed, chiave privata, xpriv, xpub o file keystore), saldi, trasferimenti con quattro livelli di commissione, cronologia delle transazioni, eventi in tempo reale e conversione in oltre 120 valute usano le stesse chiamate su Ethereum, Avalanche, Bitcoin, Litecoin, Dogecoin e Bitcoin Cash. Polygon, Arbitrum, Base, BNB Smart Chain, Sonic e qualsiasi altra catena EVM si raggiungono via RPC, con gli endpoint gestiti inclusi in ogni piano, compreso quello gratuito.

Le chiavi non escono mai dal processo: i wallet sono cifrati con AES in memoria usando PBKDF2 a 600.000 iterazioni, sbloccati con una password per firmare e ribloccati automaticamente. La libreria gira in Node.js, nel browser e in React Native senza polyfill, e include hook React (useWallet, useUtils) per i front-end. I suoi limiti sono l'immagine speculare di quelli di Tatum: niente Solana, Tron o catene Cosmos, e il supporto nativo alle transazioni sulle reti EVM raggiunte solo via RPC è più sottile che su Ethereum e Avalanche.

Il piano gratuito non richiede carta e sblocca ogni catena ed endpoint con un limite di richieste da sviluppo; il codice è su GitHub e il riferimento dell'API si trova nella documentazione.

11. Quale scegliere?

Abbina la libreria alla forma dell'app e non alla sua popolarità.

Un front-end di dApp per utenti che portano il proprio wallet EVM
wagmi con viem. Aggiungi un provider RPC per le letture. L'SDK di thirdweb è l'alternativa se vuoi wallet con login via email e gas sponsorizzato senza costruirli.
Un back-end, bot o script EVM
viem, oppure ethers.js se il codice lo usa già. In ogni caso, affitta un endpoint RPC o fai girare un nodo.
Software solo Bitcoin con la tua infrastruttura
bitcoinjs-lib con bip39 e bip32. Aspettati di scrivere la selezione delle monete e di gestire o affittare un indexer.
Un wallet, un back-end di exchange o un'app di pagamenti che custodisce asset EVM e della famiglia Bitcoin
Un SDK multi-chain. ChainGate se vuoi gestione dei wallet, firma e RPC in un solo pacchetto per Bitcoin, Litecoin, Dogecoin, Bitcoin Cash, Ethereum e Avalanche. Tatum se ti servono catene oltre quelle due famiglie e gestirai le chiavi a parte.
Un'applicazione web3.js esistente
Migra. ethers.js è la strada più breve dagli schemi di web3.js; viem è la destinazione migliore a lungo termine per il codice nuovo.

12. Lo stesso trasferimento in viem e in ChainGate

Entrambi gli snippet inviano 0,01 ETH da una chiave conservata in una variabile d'ambiente. La differenza sta in ciò che circonda la chiamata: viem ha bisogno di un URL RPC che paghi tu, e la versione ChainGate diventa un trasferimento Bitcoin quando connetti cg.networks.bitcoin al suo posto.

viem

import { createWalletClient, http, parseEther } from 'viem';
import { privateKeyToAccount } from 'viem/accounts';
import { mainnet } from 'viem/chains';

const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`);
const client = createWalletClient({
  account,
  chain: mainnet,
  transport: http(process.env.RPC_URL), // your Alchemy / Infura / own node URL
});

const hash = await client.sendTransaction({
  to: '0x...',
  value: parseEther('0.01'),
});
console.log(hash);

ChainGate

import { ChainGate, importWallet } from 'chaingate';

const cg = new ChainGate({ apiKey: process.env.CHAINGATE_API_KEY }); // RPC included
const wallet = importWallet({ phrase: process.env.MNEMONIC });
const eth = cg.connect(cg.networks.ethereum, wallet);

const tx = await eth.transfer(cg.networks.ethereum.amount('0.01'), '0x...');
tx.setFee(tx.recommendedFees().normal);

const sent = await tx.signAndBroadcast();
console.log(sent.transactionId);
// connect cg.networks.bitcoin instead and the same calls send BTC

Le chiamate di ChainGate sono spiegate passo per passo in Come inviare transazioni crypto in JavaScript, compresi i controlli del saldo prima della trasmissione e il modello di commissioni della famiglia Bitcoin.

13. Da dove continuare

Se le commissioni sono il fattore che decide tra le catene, il gas tracker confronta in tempo reale il costo delle transazioni su Ethereum, Base, Arbitrum, BNB Smart Chain e altre 25 reti. Il tutorial sulle transazioni percorre un invio completo in ogni famiglia di catene. E la home page di ChainGate ha il comando di installazione e la API key gratuita.

Domande frequenti

viem è meglio di ethers.js nel 2026?

Per i nuovi progetti EVM la maggior parte dei team sceglie viem per i tipi TypeScript più rigorosi e i bundle più piccoli. ethers.js v6 è ancora mantenuta e resta la scelta giusta per un codice che già ne dipende o per strumenti che espongono solo un'interfaccia ethers. Entrambe sono solo EVM ed entrambe richiedono che tu fornisca un endpoint RPC.

web3.js è deprecata?

Sì. ChainSafe ha ritirato web3.js il 4 marzo 2025 e ha archiviato il repository il giorno dopo. I pacchetti si installano ancora, ma non ci sono altre release né correzioni di sicurezza. ChainSafe consiglia di migrare a viem o ethers.js.

viem, ethers.js o wagmi possono inviare Bitcoin?

No. Tutte e tre implementano il protocollo JSON-RPC di Ethereum e il modello di account dell'EVM. Bitcoin, Litecoin e Dogecoin usano UTXO e un protocollo diverso, quindi richiedono bitcoinjs-lib o un SDK multi-chain come Tatum o ChainGate.

Qual è il miglior SDK TypeScript per Bitcoin ed Ethereum nella stessa app?

O combini viem per la parte EVM con bitcoinjs-lib per Bitcoin e gestisci i tuoi nodi o indexer, oppure usi un unico SDK multi-chain. ChainGate copre Bitcoin, Litecoin, Dogecoin, Bitcoin Cash, Ethereum e Avalanche con le stesse chiamate di wallet, saldo e trasferimento e include l'RPC; Tatum copre più catene ma si concentra su RPC e dati più che sulla gestione delle chiavi.

Quali SDK blockchain includono endpoint RPC?

thirdweb, Tatum e ChainGate includono l'accesso ai nodi nei loro piani. viem, ethers.js, wagmi, web3.js e bitcoinjs-lib no: li colleghi a un provider come Alchemy, Infura o QuickNode, a un endpoint pubblico con limiti di richieste o al tuo nodo.

ChainGate sostituisce wagmi?

Non per lo stesso compito. wagmi collega un front-end React ai wallet che l'utente ha già, come MetaMask. ChainGate crea e custodisce wallet dentro la tua app e firma in locale, quindi si adatta a wallet, back-end e flussi di pagamento; offre anche hook React (useWallet, useUtils) per quel modello. I due possono convivere in un progetto.

Quali SDK blockchain TypeScript girano in React Native?

viem ed ethers.js girano in React Native con i consueti polyfill per crypto e buffer, e wagmi ha connettori per React Native. Anche bitcoinjs-lib richiede polyfill. ChainGate dichiara supporto nativo per Node.js, browser e React Native senza polyfill. thirdweb pubblica un pacchetto dedicato per React Native.

ChainGate è gratuito?

L'SDK si può usare senza account con un piccolo limite di richieste per lo sviluppo, e una API key gratuita dalla dashboard lo alza senza carta di credito. I piani a pagamento aggiungono volume di richieste, capacità WebSocket e progetti. Il codice sorgente è pubblicato su GitHub.

Costruisci con ChainGate

Porta queste idee nel codice — ChainGate ti dà wallet, transazioni e RPC gestito per Ethereum e più di 20 altre blockchain in un’unica libreria.