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

# Overview

The InterwovenKit React API provides components, hooks, and utilities for
integrating Initia wallet connections, transaction signing, and UI flows into
React applications.

InterwovenKit is designed around a single provider (`InterwovenKitProvider`)
that configures network and UI behavior, with hooks layered on top for state, UI
control, and transactions. Most users start by configuring
`InterwovenKitProvider` with a preset (`MAINNET` or `TESTNET`), then use hooks
like `useInterwovenKit` or `useAddress` to read connection state and trigger UI
flows. The API is organized into:

* **Components**: React providers and UI components (`InterwovenKitProvider`)
* **Hooks**: React hooks for connection state, transactions, and data
  (`useInterwovenKit`, `useAddress`, `usePortfolio`, etc.)
* **Utilities**: Helper functions (`injectStyles`)
* **Errors**: Error types thrown by the API (`MoveError`)
* **Constants**: Configuration presets and default values (`MAINNET`, `TESTNET`,
  gas constants, `PRIVY_APP_ID`)
* **Social Login**: Wagmi and RainbowKit helpers for social login
  (`initiaPrivyWalletConnector`, `initiaPrivyWallet`)

## Common Starting Points

* **Provider setup**: See [Provider Setup](./setup/providers) for complete
  configuration (basic setup or AutoSign)
* **Initial setup**:
  [`InterwovenKitProvider`](./components/interwovenkit-provider) with
  [`MAINNET`](./constants/mainnet) or [`TESTNET`](./constants/testnet)
* **Inject styles**: Call [`injectStyles`](./utilities/inject-styles) before
  rendering InterwovenKit UI components
* **Read connection state**: [`useAddress`](./hooks/use-address) or
  [`useInterwovenKit`](./hooks/use-interwovenkit)
* **Open UI flows**: [`useInterwovenKit`](./hooks/use-interwovenkit)
  (`openConnect`, `openWallet`, `openBridge`)
* **Send transactions**: [`useInterwovenKit`](./hooks/use-interwovenkit)
  (`requestTxBlock`, `submitTxBlock`)

If you are new to InterwovenKit, start with
[`InterwovenKitProvider`](./components/interwovenkit-provider) and
[`useInterwovenKit`](./hooks/use-interwovenkit). Everything else builds on top
of those two APIs.
