# Tevm Node > A lightweight, unopinionated, powerful EVM node that runs in the browser ## Docs - [@tevm/actions](/reference/actions): Action handlers for the Tevm client, covering standard Ethereum JSON-RPC, Anvil-compatible test methods, debug/tracing, and Tevm-specific calls. - [@tevm/address](/reference/address): Utilities for Ethereum addresses. Wraps the ZEVM-compatible `EthjsAddress` primitive with a Tevm-style API and returns EIP-55 checksummed strings. - [@tevm/block](/reference/block): Block, block-header, and RLP/JSON-RPC serialization utilities. Includes Verkle/EIP-6800 payload types only; Tevm does not execute Verkle witnesses. - [@tevm/blockchain](/reference/blockchain): Tevm's block and chain-state implementation. Manages local blocks, fork-backed lookup, canonical heads, iterator heads, and chain validation using Tevm block types and ZEVM-compatible primitives. - [Bundler Plugins](/reference/bundler-plugins): Tevm bundler plugins enable direct Solidity imports in TypeScript/JavaScript, compiling them into type-safe Tevm Contract instances at build time. - [Tevm Contract Bundler](/reference/bundler): Import Solidity files directly into TypeScript with type safety and IDE integration. - [@tevm/common](/reference/common): Chain-specific configuration. Combines viem chain definitions with a ZEVM-backed `Common` instance the VM uses for hardfork, EIP, consensus, and gas-parameter lookups. Includes custom crypto hooks such as KZG for blob transaction testing. - [@tevm/contract](/reference/contract): Type-safe contract interactions, deployments, events, and pre-built ERC20/ERC721 contracts. - [@tevm/decorators](/reference/decorators): Action decorators for extending Tevm clients: EIP-1193 providers, Ethereum JSON-RPC methods, and Tevm-specific actions. - [@tevm/evm](/reference/evm): Tevm's low-level EVM facade. Backed by `@evmts/zevm/evm` and wrapped with Tevm-specific defaults for state, blockchain, precompiles, predeploys, logging, profiling, and unlimited-contract-size testing. - [Package Reference Documentation](/reference): [@tevm/actions](/reference/actions) - Core action handlers for interacting with the EVM - [@tevm/memory-client](/reference/memory-client): In-memory Ethereum client combining viem with Tevm's EVM. Supports forking, manual/auto mining, and Tevm-specific actions on top of standard viem public, wallet, and test actions. - [@tevm/node API Reference](/reference/node): Full API on GitHub: [packages/node/docs/globals.md](https://github.com/evmts/tevm-monorepo/tree/main/packages/node/docs/globals.md). - [@tevm/receipt-manager](/reference/receipt-manager): ZEVM-backed transaction receipt storage and lookup. Powers Tevm's `eth_getTransactionReceipt`, `eth_getBlockReceipts`, `eth_getLogs`, filter, and subscription flows. - [@tevm/rlp API Reference](/reference/rlp): ZEVM-backed Recursive Length Prefix encoding utilities through Tevm's package namespace. - [@tevm/state](/reference/state): State management for Tevm. Handles account state (balance, nonce, code, storage), state transitions/checkpoints, caching, persistence, and forked chain state. - [@tevm/trie API Reference](/reference/trie): ZEVM-backed Merkle Patricia Trie utilities through Tevm's package namespace. - [@tevm/tx](/reference/tx): Tevm's transaction facade backed by `@evmts/zevm/tx`. Exports typed Ethereum transaction constructors, helpers, type guards, and Tevm's impersonated transaction helper. - [@tevm/txpool](/reference/txpool): Transaction pool facade backed by `@evmts/zevm/txpool`. Adds Tevm-specific fee classification for fee-market-shaped transactions, including EIP-7702 and impersonated transactions. - [Utilities & Addresses](/reference/utils): Lightweight utility functions and classes built on [`tevm/utils`](https://github.com/evmts/tevm-monorepo/tree/main/packages/utils), [`@evmts/zevm`](https://github.com/evmts/zevm), and [`viem`](https://viem.sh). - [@tevm/utils](/reference/utils): `InvalidAddressError` - bytes/string can't parse as a 20-byte address. - [@tevm/vm](/reference/vm): High-performance EVM implementation for Tevm. Handles bytecode execution, transaction processing, block building, and state transitions across supported hardforks and EIPs. - [Tevm Contract Bundler](/reference/bundler): Import Solidity files directly into TypeScript with type safety and IDE integration. - [Bundler Internals](/reference/bundler/internals): All Tevm bundler plugins share a unified core (`@tevm/base-bundler`). Each plugin adapts the same pipeline to its build tool. - [Notable Methods & Exports](/reference/bundler/methods): Internal utilities for custom bundling workflows, debugging compilation, or extending Tevm. - [Bundler Overview](/reference/bundler/overview): **Direct imports**: import `.sol` files like any TS module. - [Bundler Troubleshooting](/reference/bundler/troubleshooting): Solidity imports show red underlines or no auto-completion. - [Tevm Architecture Overview](/introduction/architecture-overview): Advanced Content - [Why Run An Ethereum Node in JavaScript?](/introduction/why-run-ethereum-in-js): You know what would make solving all these problems trivially easy? If we just were able to use Foundry in the browser - [Bundler Quickstart](/getting-started/bundler): Set up the Tevm bundler to import Solidity contracts directly into TypeScript/JavaScript. - [Getting Started with Ethers.js](/getting-started/ethers): Tevm is built around viem but provides **full compatibility** with [ethers.js](https://docs.ethers.org/v6/) via its EIP-1193 provider interface. - [Community](/getting-started/testimonials): Here's what developers and industry leaders are saying about Tevm. - [Getting Started with Viem](/getting-started/viem): Perfect for Viem Users - [Building a Debugger UI](/examples/debugger-ui): These docs have not been checked for correctness yet. Use with caution. - [Using with Ethers.js v6](/examples/ethers): Tevm works with Ethers.js through Tevm's EIP-1193 provider interface. Use Tevm for local chain control, state setup, and mining; use ethers for providers, wallets, and contract instances. - [Forking Mainnet Example](/examples/forking-mainnet): Set `MAINNET_RPC_URL` to a mainnet RPC endpoint before running these examples. - [Local Testing](/examples/local-testing): These docs have not been checked for correctness yet. Use with caution. - [Using with Viem](/examples/viem): Tevm integrates with [viem](https://viem.sh) as a local Ethereum environment with viem's familiar API surface. - [Creating a MemoryClient](/core/create-tevm-node): `createMemoryClient` bootstraps a complete Ethereum execution environment in JavaScript. - [Forking & Reforking](/core/forking): Forking creates a local copy of an Ethereum (or any EVM) network at a point in time. Use it for: - [Managing State](/core/managing-state): Tevm exposes state management via two layers: a low-level `StateManager` and a high-level viem-style client API. - [Mining Modes](/core/mining-modes): Mining modes determine when transactions are included in blocks. Pick the mode that matches your scenario. - [Runtime Model and ZEVM](/core/runtime-model): Tevm and [ZEVM](https://zevm.sh/docs) share execution primitives but are different products with different public interfaces. - [TevmNode Interface](/core/tevm-node-interface): `TevmNode` is the core low-level API. It exposes the EVM, transaction pool, state, receipts, account impersonation, filters, and extensibility hooks. - [Account Management](/api/account-management): Two actions manage account state: `getAccountHandler` and `setAccountHandler`. - [EVM Events](/api/evm-events): Tevm Node exposes low-level EVM events for monitoring and debugging contract execution. - [JSON-RPC Support](/api/json-rpc): Tevm Node provides [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193)-compatible [JSON-RPC](https://ethereum.org/en/developers/docs/apis/json-rpc/) support for integration with Ethereum libraries and tools. - [Tevm Node Methods](/api/methods): Reference for the main API methods on a Tevm Node instance: EVM interaction, state management, execution control. - [Package Reference](/api/packages): Tevm Node is modular. Install the complete suite with `npm install tevm`, or individual packages as needed. - [Call API](/api/tevm-call): The Call API covers ~90% of use cases (with mining) and provides an EVM call interface with extensive configuration. - [VM & Submodules](/api/vm-and-submodules): [Tevm Node](https://github.com/evmts/tevm-monorepo) is built from submodules usable together as an in-memory Ethereum node or independently. High-level APIs (`createMemoryClient`, viem actions, JSON-RPC) sit on top of these. - [Contract Loader](/api/whatsabi-integration): Coming Soon - [Custom Precompiles](/advanced/custom-precompiles): Tevm lets you register JavaScript functions as EVM precompiles at fixed addresses — useful for crypto, oracles, complex math, bridges, custom data structures, and test helpers. - [Performance & Profiler](/advanced/performance-profiler): Tevm Node ships a built-in profiler that tracks execution time, gas, and other metrics per EVM operation. - [Receipts & Logs](/advanced/receipts-and-logs): Tevm Node manages transaction receipts and event logs through the ReceiptsManager and filter system — enabling event listening, status tracking, and log filtering. - [Transaction Pool](/advanced/txpool): The TxPool manages pending transactions before block inclusion. Tevm's facade is backed by `@evmts/zevm/txpool` and adds Tevm-specific fee handling for modern fee-market transactions.