# evmstate > A TypeScript library for tracing, and visualizing EVM state changes with detailed human-readable labeling. ## Docs - [@polareth/evmstate](/introduction): A TypeScript library for tracing and visualizing EVM state changes with detailed human-readable labeling. - [Playground](/playground): This interactive playground demonstrates how different Solidity storage types are traced and visualized. - [API Overview](/api): @polareth/evmstate provides three main APIs for analyzing Ethereum state changes: - [traceState](/api/trace-state): Analyzes storage access patterns during transaction execution, identifying which contract slots are read and modified, and providing human-readable labels. - [Tracer](/api/tracer): A class that encapsulates the storage access tracing functionality in an object-oriented interface, allowing for reusable tracers with consistent configuration. - [watchState](/api/watch-state): Monitors state changes for a specific Ethereum address by watching new blocks and tracing transactions. It provides notifications when the address's state is accessed or modified. - [Basic usage](/guides/basic-usage): This guide covers the fundamental ways to use the library to analyze and label state access patterns. - [Installation](/guides/installation): Install @polareth/evmstate using your preferred package manager: - [Examples](/guides/usage-examples): This guide covers a few examples of how to use the library. - [Output format](/reference/output-format): This reference documents the structure of data returned by the library's tracing functions. - [Storage types](/reference/storage-types): This reference explains how the library handles different Solidity storage types.