-----

Documentation: [html](https://docs.ethers.io/)

-----

Documentation
=============

What is Ethers?
---------------

Features
--------

Developer Documentation
-----------------------

* [Getting Started](getting-started)
  * [Installing](getting-started)
  * [Importing](getting-started)
  * [Common Terminology](getting-started)
  * [Connecting to Ethereum: Metamask](getting-started)
  * [Connecting to Ethereum: RPC](getting-started)
  * [Contracts](getting-started)
  * [Signing Messages](getting-started)
* [Ethereum Basics](concepts)
  * [Events](concepts/events)
    * [Logs and Filtering](concepts/events)
    * [Solidity Topics](concepts/events)
  * [Gas](concepts/gas)
    * [Gas Price](concepts/gas)
    * [Gas Limit](concepts/gas)
  * [Security](concepts/security)
    * [Key Derivation Functions](concepts/security)
  * [Best Practices](concepts/best-practices)
    * [Network Changes](concepts/best-practices)
* [Provider API Keys](api-keys)
  * [Etherscan](api-keys)
  * [INFURA](api-keys)
  * [Alchemy](api-keys)
  * [Pocket Gateway](api-keys)
  * [Creating a Default Provider](api-keys)
* [Application Programming Interface](api)
  * [Providers](api/providers)
    * [Provider](api/providers/provider)
      * [Accounts Methods](api/providers/provider)
      * [Blocks Methods](api/providers/provider)
      * [Ethereum Naming Service (ENS) Methods](api/providers/provider)
      * [EnsResolver](api/providers/provider)
      * [Logs Methods](api/providers/provider)
      * [Network Status Methods](api/providers/provider)
      * [Transactions Methods](api/providers/provider)
      * [Event Emitter Methods](api/providers/provider)
      * [Inspection Methods](api/providers/provider)
    * [JsonRpcProvider](api/providers/jsonrpc-provider)
      * [JsonRpcSigner](api/providers/jsonrpc-provider)
      * [JsonRpcUncheckedSigner](api/providers/jsonrpc-provider)
      * [Node-Specific Methods](api/providers/jsonrpc-provider)
    * [API Providers](api/providers/api-providers)
      * [EtherscanProvider](api/providers/api-providers)
      * [InfuraProvider](api/providers/api-providers)
      * [AlchemyProvider](api/providers/api-providers)
      * [CloudflareProvider](api/providers/api-providers)
    * [Other Providers](api/providers/other)
      * [FallbackProvider](api/providers/other)
      * [IpcProvider](api/providers/other)
      * [UrlJsonRpcProvider](api/providers/other)
      * [Web3Provider](api/providers/other)
      * [WebSocketProvider](api/providers/other)
    * [Types](api/providers/types)
      * [BlockTag](api/providers/types)
      * [Networkish](api/providers/types)
      * [Network](api/providers/types)
      * [Block](api/providers/types)
      * [Events and Logs](api/providers/types)
      * [Transactions](api/providers/types)
  * [Signers](api/signer)
    * [Signer](api/signer)
    * [Wallet](api/signer)
    * [VoidSigner](api/signer)
    * [ExternallyOwnedAccount](api/signer)
  * [Contract Interaction](api/contract)
    * [Contract](api/contract/contract)
      * [Creating Instances](api/contract/contract)
      * [Properties](api/contract/contract)
      * [Methods](api/contract/contract)
      * [Events](api/contract/contract)
      * [Meta-Class](api/contract/contract)
    * [ContractFactory](api/contract/contract-factory)
      * [Creating Instances](api/contract/contract-factory)
      * [Properties](api/contract/contract-factory)
      * [Methods](api/contract/contract-factory)
    * [Example: ERC-20 Contract](api/contract/example)
      * [Connecting to a Contract](api/contract/example)
      * [Properties](api/contract/example)
      * [Methods](api/contract/example)
      * [Events](api/contract/example)
      * [Meta-Class Methods](api/contract/example)
      * [Meta-Class Filters](api/contract/example)
  * [Utilities](api/utils)
    * [Application Binary Interface](api/utils/abi)
      * [AbiCoder](api/utils/abi/coder)
        * [Creating Instance](api/utils/abi/coder)
        * [Coding Methods](api/utils/abi/coder)
      * [ABI Formats](api/utils/abi/formats)
        * [Human-Readable ABI](api/utils/abi/formats)
        * [Solidity JSON ABI](api/utils/abi/formats)
      * [Fragments](api/utils/abi/fragments)
        * [Formats](api/utils/abi/fragments)
        * [Fragment](api/utils/abi/fragments)
        * [ConstructorFragment](api/utils/abi/fragments)
        * [EventFragment](api/utils/abi/fragments)
        * [FunctionFragment](api/utils/abi/fragments)
        * [ParamType](api/utils/abi/fragments)
      * [Interface](api/utils/abi/interface)
        * [Creating Instances](api/utils/abi/interface)
        * [Properties](api/utils/abi/interface)
        * [Formatting](api/utils/abi/interface)
        * [Fragment Access](api/utils/abi/interface)
        * [Signature and Topic Hashes](api/utils/abi/interface)
        * [Encoding Data](api/utils/abi/interface)
        * [Decoding Data](api/utils/abi/interface)
        * [Parsing](api/utils/abi/interface)
        * [Types](api/utils/abi/interface)
        * [Specifying Fragments](api/utils/abi/interface)
    * [Addresses](api/utils/address)
      * [Address Formats](api/utils/address)
      * [Converting and Verifying](api/utils/address)
      * [Derivation](api/utils/address)
      * [Contracts Addresses](api/utils/address)
    * [BigNumber](api/utils/bignumber)
      * [Types](api/utils/bignumber)
      * [Creating Instances](api/utils/bignumber)
      * [Methods](api/utils/bignumber)
      * [Notes](api/utils/bignumber)
    * [Byte Manipulation](api/utils/bytes)
      * [Types](api/utils/bytes)
      * [Inspection](api/utils/bytes)
      * [Converting between Arrays and Hexstrings](api/utils/bytes)
      * [Array Manipulation](api/utils/bytes)
      * [Hexstring Manipulation](api/utils/bytes)
      * [Signature Conversion](api/utils/bytes)
      * [Random Bytes](api/utils/bytes)
    * [Constants](api/utils/constants)
      * [Bytes](api/utils/constants)
      * [Strings](api/utils/constants)
      * [BigNumber](api/utils/constants)
    * [Display Logic and Input](api/utils/display-logic)
      * [Units](api/utils/display-logic)
      * [Functions](api/utils/display-logic)
    * [Encoding Utilities](api/utils/encoding)
      * [Base58](api/utils/encoding)
      * [Base64](api/utils/encoding)
      * [Recursive-Length Prefix](api/utils/encoding)
    * [FixedNumber](api/utils/fixednumber)
      * [Creating Instances](api/utils/fixednumber)
      * [Properties](api/utils/fixednumber)
      * [Methods](api/utils/fixednumber)
      * [FixedFormat](api/utils/fixednumber)
    * [Hashing Algorithms](api/utils/hashing)
      * [Cryptographic Hash Functions](api/utils/hashing)
      * [HMAC](api/utils/hashing)
      * [Hashing Helpers](api/utils/hashing)
      * [Solidity Hashing Algorithms](api/utils/hashing)
    * [HD Wallet](api/utils/hdnode)
      * [Types](api/utils/hdnode)
      * [HDNode](api/utils/hdnode)
      * [Other Functions](api/utils/hdnode)
    * [Logging](api/utils/logger)
      * [Logger](api/utils/logger)
      * [Errors](api/utils/logger)
      * [Log Levels](api/utils/logger)
    * [Property Utilities](api/utils/properties)
    * [Signing Key](api/utils/signing-key)
      * [Other Functions](api/utils/signing-key)
    * [Strings](api/utils/strings)
      * [Bytes32String](api/utils/strings)
      * [UTF-8 Strings](api/utils/strings)
      * [UnicodeNormalizationForm](api/utils/strings)
      * [Custom UTF-8 Error Handling](api/utils/strings)
    * [Transactions](api/utils/transactions)
      * [Types](api/utils/transactions)
      * [Functions](api/utils/transactions)
    * [Web Utilities](api/utils/web)
    * [Wordlists](api/utils/wordlists)
      * [Wordlist](api/utils/wordlists)
      * [Languages](api/utils/wordlists)
  * [Other Libraries](api/other)
    * [Assembly](api/other/assembly)
      * [Ethers ASM Dialect](api/other/assembly/dialect)
        * [Opcodes](api/other/assembly/dialect)
        * [Labels](api/other/assembly/dialect)
        * [Literals](api/other/assembly/dialect)
        * [Comments](api/other/assembly/dialect)
        * [Scopes](api/other/assembly/dialect)
        * [Data Segment](api/other/assembly/dialect)
        * [Links](api/other/assembly/dialect)
        * [Stack Placeholders](api/other/assembly/dialect)
        * [Evaluation and Execution](api/other/assembly/dialect)
      * [Utilities](api/other/assembly/api)
        * [Assembler](api/other/assembly/api)
        * [Disassembler](api/other/assembly/api)
        * [Opcode](api/other/assembly/api)
      * [Abstract Syntax Tree](api/other/assembly/ast)
        * [Types](api/other/assembly/ast)
        * [Nodes](api/other/assembly/ast)
    * [Hardware Wallets](api/other/hardware)
      * [LedgerSigner](api/other/hardware)
  * [Experimental](api/experimental)
    * [BrainWallet](api/experimental)
    * [EIP1193Bridge](api/experimental)
    * [NonceManager](api/experimental)
* [Command Line Interfaces](cli)
  * [Sandbox Utility](cli/ethers)
    * [Help](cli/ethers)
    * [Examples](cli/ethers)
  * [Assembler](cli/asm)
    * [Help](cli/asm)
    * [Example Input Files](cli/asm)
    * [Assembler Examples](cli/asm)
    * [Disassembler Examples](cli/asm)
  * [Ethereum Naming Service](cli/ens)
    * [Help](cli/ens)
    * [Examples](cli/ens)
  * [TypeScript](cli/typescript)
    * [Help](cli/typescript)
    * [Examples](cli/typescript)
  * [Making Your Own](cli/plugin)
    * [CLI](cli/plugin)
    * [Plugin](cli/plugin)
    * [ArgParser](cli/plugin)
* [Cookbook](cookbook)
  * [React Native (and ilk)](cookbook/react-native)
    * [Installing](cookbook/react-native)
    * [Security](cookbook/react-native)
* [Migration Guide](migration)
  * [Migration: From Web3.js](migration/web3)
    * [Providers](migration/web3)
    * [Signers](migration/web3)
    * [Contracts](migration/web3)
    * [Numbers](migration/web3)
    * [Utilities](migration/web3)
  * [Migration: From Ethers v4](migration/ethers-v4)
    * [BigNumber](migration/ethers-v4)
    * [Contracts](migration/ethers-v4)
    * [Errors](migration/ethers-v4)
    * [Interface](migration/ethers-v4)
    * [Wallet](migration/ethers-v4)
* [Testing](testing)
  * [Supported Platforms](testing)
  * [Test Suites](testing)
  * [Test Suite API](testing)
  * [Schemas](testing)
* [Contributing and Hacking](contributing)
  * [Building](contributing)
  * [Documentation](contributing)
* [Other Resources](other-resources)
  * [Ethereum Overview](other-resources)
  * [Tutorials](other-resources)
* [Flatworm Docs](documentation)
  * [Fragments](documentation)
  * [Markdown](documentation)
  * [Code](documentation)
  * [Tables](documentation)
  * [Configuration](documentation)
  * [Extensions](documentation)
* [License and Copyright](license)

Legacy Documentation
--------------------

