Skip to main content

Hooks

caution

This documentation is for Web3Modal v2. You can find Web3Modal v3 docs here

useWeb3Modal​

Hook to programmatically control the modal. Useful when you want to use your own UI elements and subscribe to modals state

Example​

import { useWeb3Modal } from '@web3modal/react'

const { isOpen, open, close, setDefaultChain } = useWeb3Modal()

Reference​

// Boolean that indicates if modal is open or closed
isOpen: boolean
// Function to open the modal. Takes in optional object with options
open: (options?: Options) => Promise<void>

interface Options {
route?: 'Account' | 'ConnectWallet' | 'Help' | 'SelectNetwork'
}
// Function to close the modal
close: () => void
// Function to set a default chain before user connects
setDefaultChain: (chain: WagmiChain) => void

useWeb3ModalTheme​

Hook to set or update theme options for themeVariables and themeMode.

Example​

import { useWeb3ModalTheme } from '@web3modal/react'

const { theme, setTheme } = useWeb3ModalTheme()

Reference​

// Object that reflects current modal theme
theme: {
themeMode, themeVariables
}
// Function to set modal's themeMode and themeVariables options
setTheme({
themeMode: 'dark',
themeVariables: {
'--w3m-font-family': 'Roboto, sans-serif',
'--w3m-accent-color': '#F5841F'
// ...
}
})

Wagmi hooks​

Other hooks like useAccount, useConnect and many more are available from wagmi.