@avakit/core
v0.2.0
Published
Core SDK for AvaKit — EVM clients, wallet adapters, deploy helpers, and chain data for Avalanche.
Maintainers
Readme
@avakit/core
Framework-agnostic kernel for AvaKit — EVM clients, wallet adapters, deploy helpers, and chain data for Avalanche. Depends only on viem. AvaKit never touches private keys.
Install
npm install @avakit/core viemESM-only.
@avakit/coreships ES modules (no CommonJS build) — useimport, notrequire. In a CommonJS file, load it with a dynamicawait import("@avakit/core"). Requires Node>= 20.11.
Usage
import { fuji, getPublicClient, getBalance, injectedAdapter } from "@avakit/core";
// Read chain data
const balance = await getBalance("0x…", fuji);
// Connect a wallet (browser)
const adapter = injectedAdapter();
const { address, provider } = await adapter.connect();Chains live at @avakit/core/chains; the optional Web3Auth social-login adapter at @avakit/core/web3auth.
What's inside
- Chains —
fuji,cChain,defineChainfor custom L1s - Clients —
getPublicClient,getWalletClient,toViemChain - Adapters —
injectedAdapter()(Core / MetaMask);web3authAdapter({ clientId })(social login, from@avakit/core/web3auth) - Network —
ensureChain(provider, chain)(add + switch) - Deploy —
deployContract,getBytecode - RPC data —
getBalance,getTransactionReceipt,readContract(take anAvaChain) - Indexed data (AvaCloud) —
getNativeBalance,listErc20Balances,listNfts,listTransactions(take an address + a chain, either anAvaChainlikefujior a raw chain id like43113)
For React components and hooks, see @avakit/react. To scaffold a full app, use create-avalanche-app.
MIT © AvaKit contributors
