npm.io
1.0.0-beta.14 • Published 5d ago

@tetherto/wdk-wallet-evm

Licence
Apache-2.0
Version
1.0.0-beta.14
Deps
9
Size
83 kB
Vulns
0
Weekly
5.4K

@tetherto/wdk-wallet-evm

npm version npm downloads license docs

Note: This package is currently in beta. Please test thoroughly in development environments before using in production.

A simple and secure package to manage BIP-44 wallets for EVM-compatible blockchains. This package provides a clean API for creating, managing, and interacting with Ethereum-compatible wallets using BIP-39 seed phrases and EVM-specific derivation paths.

About WDK

This module is part of the WDK (Wallet Development Kit) project, which empowers developers to build secure, non-custodial wallets with unified blockchain access, stateless architecture, and complete user control.

For detailed documentation about the complete WDK ecosystem, visit docs.wdk.tether.io.

Installation

npm install @tetherto/wdk-wallet-evm

Quick Start

import WalletManagerEvm from '@tetherto/wdk-wallet-evm'

const seedPhrase = 'abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about'

const wallet = new WalletManagerEvm(seedPhrase, {
  provider: 'https://sepolia.drpc.org',
})

const account = await wallet.getAccount(0)
const address = await account.getAddress()
console.log('Address:', address)

wallet.dispose()

Key Capabilities

  • BIP-39 Seed Phrase Support: Generate and validate mnemonic seed phrases
  • BIP-44 Derivation Paths: Standard Ethereum derivation (m/44'/60')
  • Multi-Account Management: Derive multiple accounts from a single seed phrase
  • EIP-1559 Transaction Support: Modern fee estimation and transaction sending
  • ERC-20 Token Support: Query balances and transfer tokens
  • Message Signing: Sign and verify messages (EIP-191 and EIP-712)
  • Fee Estimation: Real-time network fee rates with normal/fast tiers
  • Secure Memory Disposal: Clear private keys from memory when done

Compatibility

  • Ethereum Mainnet and testnets (Sepolia)
  • Layer 2 Networks: Arbitrum, Optimism, Base
  • Other EVM Chains: Polygon, Avalanche C-Chain, and any EVM-compatible chain

Documentation

Topic Description Link
Overview Module overview and feature summary Wallet EVM Overview
Usage End-to-end integration walkthrough Wallet EVM Usage
Configuration Provider, fees, and network configuration Wallet EVM Configuration
API Reference Complete class and type reference Wallet EVM API Reference

Examples

Example Description
Create Wallet Initialize a wallet manager and derive accounts from a seed phrase
Manage Accounts Work with multiple accounts and custom derivation paths
Check Balances Query native token and ERC-20 balances for owned accounts
Read-Only Account Monitor balances for any address without a private key
Send Transaction Estimate fees and send native token transactions (EIP-1559 + legacy)
Token Transfer Transfer ERC-20 tokens and estimate transfer fees
Sign & Verify Message Sign messages and verify signatures
Fee Management Retrieve current network fee rates
Memory Management Securely dispose wallets and clear private keys from memory

For detailed walkthroughs, see the Usage Guide. See all runnable examples in the wdk-examples repository.

Community

Join the WDK Discord to connect with other developers.

Support

For support, please open an issue on GitHub or reach out via email.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Keywords