Overview
- React provider that configures and renders the InterwovenKit widget shell (drawer, routes, and supporting providers).
- Mount once near the top of your app, wrapping your root component.
- AutoSign is optional. Enable it with
enableAutoSignwhen you want signature-derived automatic signing flows.
Prerequisites
- Must be used within a React Query
QueryClientProvider. - Must be used within a wagmi
WagmiProviderif using wallet-related APIs. - Client-only (no SSR): Put this in a
use clientprovider tree, or use a dynamic import in Next.js.
Styles
- CSS styles must be injected manually using
injectStylesonce at app startup. Otherwise the UI will be unstyled.
Quickstart
This example shows the provider structure. For complete setup configurations,
see Provider Setup.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
defaultChainId | string | From preset | Initia or rollup chain ID that InterwovenKit should treat as the “home” chain |
registryUrl | string | From preset | Base URL for the Initia registry API used to resolve chains and assets |
routerApiUrl | string | From preset | Base URL for the router API used by the bridge and swap flows |
glyphUrl | string | From preset | Base URL for Glyph profile data (user avatars and related metadata) |
usernamesModuleAddress | string | From preset | On‑chain module address of the Initia (.init) username contract |
lockStakeModuleAddress | string | From preset | On-chain module address used for lock/stake position queries |
minityUrl | string | From preset | Base URL for Minity portfolio streaming and related portfolio APIs |
dexUrl | string | From preset | Base URL for DEX-related data used by portfolio and positions |
vipUrl | string | From preset | Base URL for VIP-related data used by portfolio and positions |
theme | "light" | "dark" | From preset (typically dark) | Visual theme for the widget |
customChain | Chain | undefined | Adds or overrides a chain definition in the Initia registry. Use when you run a private rollup or need to inject a chain that is not yet in the public registry |
protoTypes | Iterable<[string, GeneratedType]> | undefined | Additional protobuf type mappings used when encoding Cosmos transactions. Only needed if you use custom message types |
aminoConverters | AminoConverters | undefined | Custom Amino converters for legacy signing. Only needed for advanced integrations |
container | HTMLElement | undefined | Optional element the widget should render into instead of the default Shadow DOM host |
disableAnalytics | boolean | false (mainnet), true (testnet) | When true, disables InterwovenKit’s built‑in analytics events |
enableAutoSign | boolean | Record<string, string[]> | undefined | Enables AutoSign and optionally whitelists chains and message types. true enables the default message type for the current default chain. Record<string, string[]> is a per-chain allowlist of message type URLs |
autoSignFeePolicy | Record<string, AutoSignFeePolicy> | undefined | Optional per-chain fee policy overrides for AutoSign gas multiplier and allowed fee denoms |
cosmosWallets | CosmosWallet[] | undefined | Optional additional Cosmos wallet entries shown in the connect flow |
Return value
Renderschildren and mounts the InterwovenKit UI shell.
Examples
Custom chain configuration
This example shows only the
InterwovenKitProvider configuration. For
complete provider setup including QueryClientProvider, WagmiProvider, and
injectStyles, see Provider Setup.Notes
- For end-to-end setup examples, see Provider Setup.
Type reference (advanced)
Chain, GeneratedType, AminoConverters, AutoSignFeePolicy, and
CosmosWallet are from InterwovenKit source and its external dependencies. See
@initia/initia-registry-types, @cosmjs/proto-signing, and @cosmjs/stargate
for related external types.