> ## Documentation Index
> Fetch the complete documentation index at: https://developer.tailwind.zone/llms.txt
> Use this file to discover all available pages before exploring further.

# With Viem

> Viem is an Ethereum client library which can be used with MetaMask or TAILWIND.

# Support TAILWIND in 5 minutes

<Steps>
  <Step title="Download TAILWIND extension">
    Download the [extension](https://chromewebstore.google.com/detail/dpnfollacokcbkeiidhplhjpafkbfacj)
    and create an account. If needed, you can follow the onboarding guide [here](https://support.tailwind.zone/get-tailwind).
  </Step>

  <Step title="Download TAILWIND wallet adapter">
    ```bash
    yarn add @tailwindzone/connect
    ```
  </Step>

  <Step title="Copy Viem chain information for sei">
    <CodeGroup>
      ```typescript Sei mainnet (pacific-1)
      import { defineChain } from "viem"

      const seimainnet = defineChain({
        id: 1329,
        name: 'Sei Mainnet',
        nativeCurrency: { name: 'Sei', symbol: 'SEI', decimals: 18 },
        rpcUrls: {
          default: {
            http: ['https://evm-rpc.sei-apis.com'],
          },
        },
      })
      ```

      ```typescript atlantic-2
      import { defineChain } from "viem"

      const seiatlantic2 = defineChain({
        id: 1328,
        name: 'Sei Atlantic-2 Testnet',
        nativeCurrency: { name: 'Sei', symbol: 'SEI', decimals: 18 },
        rpcUrls: {
          default: {
            http: ['https://evm-rpc.atlantic-2.seinetwork.io'],
          },
        },
      })
      ```

      ```typescript artic-1
      import { defineChain } from "viem"

      const seiartic1 = defineChain({
        id: 713715,
        name: 'Sei Artic-1 Testnet',
        nativeCurrency: { name: 'Sei', symbol: 'SEI', decimals: 18 },
        rpcUrls: {
          default: {
            http: ['https://evm-rpc-arctic-1.sei-apis.com'],
          },
        },
      })
      ```
    </CodeGroup>
  </Step>

  <Step title="Use TAILWIND as an Ethereum Provider">
    Tailwind has the same API as MetaMask.

    ```typescript
    import { connect } from "@tailwindzone/connect";
    import { createWalletClient, custom, parseEther } from "viem";

    const onSignClick = async () => {
      // fetches provider from `window.tailwind`
      const tailwind = await connect();
      // Use tailwind as provider, just like window.ethereum for MetaMask 
      const client = createWalletClient({
        chain: seimainnet,
        transport: custom(tailwind)
      })
      // Address of Tailwind wallet you created
      const [address] = await client.requestAddresses();
      const hash = await client.sendTransaction({
        account: address,
        to: RECEIVING_SEI_EVM_ADDRESS,
        value: parseEther('0.001')
      }) 
      // display hash in UI or console
    }
    ```
  </Step>

  <Step title="Done!">
    You just supported a universal USDC gas wallet.
    Prepare to get more users!
  </Step>
</Steps>
