Module @dfns/lib-viem - v0.5.9

Dfns Wallet for viem

Dfns wallet integration with the popular viem library, makes working with Ethereum and other EVM compatible ecosystems as simple and painless as possible.

The DfnsWallet uses generateSignature to compute signatures using your Dfns managed wallets, for all the transactions created by your viem program. Then you need to broadcast these transactions yourself to the corresponding node providers that are either self hosted or by a blockchain provider.

A typical setup routine looks like this,

import { DfnsWallet } from '@dfns/lib-viem'
import { DfnsApiClient } from '@dfns/sdk'
import { AsymmetricKeySigner } from '@dfns/sdk-keysigner'
import { createWalletClient } from 'viem'
import { toAccount } from 'viem/accounts'

const signer = new AsymmetricKeySigner({
privateKey: process.env.DFNS_PRIVATE_KEY!,
credId: process.env.DFNS_CRED_ID!,
appOrigin: process.env.DFNS_APP_ORIGIN!,
})

const dfnsClient = new DfnsApiClient({
appId: process.env.DFNS_APP_ID!,
authToken: process.env.DFNS_AUTH_TOKEN!,
baseUrl: process.env.DFNS_API_URL!,
signer,
})

const wallet = await DfnsWallet.init({
walletId: process.env.DFNS_WALLET_ID!,
dfnsClient,
})

const account = toAccount(wallet)
const client = createWalletClient({
account,
chain: mainnet,
transport: http(),
})

Go checkout the examples we have that showcase how you can use viem to start developing Dapps with Dfns wallets.

Index

Classes

Type Aliases

Generated using TypeDoc