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

# Configure Viem's WalletClient

> Modify Viem's WalletClient to your unique needs.

<Card title="Recommended: JavaScript SDK with React Hooks" icon="react" color="#4779FE">
  For new React apps, we recommend the JavaScript SDK with React Hooks (`@dynamic-labs-sdk/react-hooks`) instead of the legacy React SDK documented here. The JS SDK comes with many benefits such as a much smaller bundle size and other optimizations. Use the [React quickstart (JavaScript SDK)](/javascript/reference/react-quickstart) to get started.
</Card>

<Note>This is a React-only guide.</Note>

## Configurable Wallet Connectors

In some cases you would want to override the default settings of the wallet client.
Dynamic allows you do to so by passing [Viem's HttpTransportConfig](https://viem.sh/docs/clients/transports/http.html#http-transport) to the Wallet Connector.
You can do so by using Dynamic `EthereumWalletConnectorsWithConfig` and passing it to the argument: `httpTransportConfig`

Example:

```jsx theme={"system"}
import { DynamicContextProvider } from '@dynamic-labs/sdk-react-core';
import { EthereumWalletConnectorsWithConfig } from '@dynamic-labs/ethereum';

<DynamicContextProvider
  settings={{
    walletConnectors: [
      EthereumWalletConnectorsWithConfig({
        httpTransportConfig: {
          fetchOptions: {
            headers: {
              'X-Requested-With': 'XMLHttpRequest',
            },
          },
          retryCount: 0
        },
      })
    ],
  }}
>
  {...}
</DynamicContextProvider>
```
