Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content
Tevm Logo
Tevm 1.0 Release Candidate

An in-process Ethereum node and viem-compatible client for browsers, Node.js, Bun, and Deno. These docs target tevm@1.0.0-rc.151.

npm install tevm@1.0.0-rc.151 viem
import { createMemoryClient, PREFUNDED_ACCOUNTS } from "tevm";
 
const client = createMemoryClient({
  miningConfig: { type: "manual" },
});
 
const { txHash } = await client.tevmCall({
  from: PREFUNDED_ACCOUNTS[0].address,
  to: "0x1111111111111111111111111111111111111111",
  value: 1n,
  addToMempool: true,
});
 
if (!txHash) throw new Error("transaction was not added to the txpool");
 
await client.tevmMine({ blockCount: 1 });
const receipt = await client.getTransactionReceipt({ hash: txHash });
 
console.log(receipt.status);
  • In-memory or forked execution — run a local chain or overlay local state on an upstream EVM network.
  • Viem-compatible — use public, wallet, and Anvil-style test actions on the same client.
  • Real blocks and receipts — submit pending transactions, mine canonical blocks, and query indexed receipts and logs.
  • Execution inspection — collect opcode hooks, traces, access lists, gas data, and state overrides.
  • Direct Solidity imports — compile .sol modules with the Tevm bundler plugins.

LLM-friendly versions: llms.txt and llms-full.txt.