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

# Trustware

> Trustware is programmable infrastructure for digital asset routing: dynamically route, swap, and settle any asset on any chain to any destination.

Trustware is the Universal Deposit Layer. It solves the deposit conversion problem: accept any asset on any chain and settle to your preferred asset on your preferred chain; without building the routing and settlement plumbing yourself. Use the React SDK for a prebuilt deposit widget, or integrate directly via the REST API for full backend control.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="bolt" href="/quickstart">
    Install the SDK and render your first deposit widget in minutes.
  </Card>

  <Card title="Integration Patterns" icon="puzzle-piece" href="/integration/drop-in-widget">
    Choose the right integration style: drop-in widget, host wallet bridge, or headless core.
  </Card>

  <Card title="Configuration" icon="sliders" href="/configuration/overview">
    Customize routes, theme, messages, retry behavior, and WalletConnect settings.
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/overview">
    REST API endpoints for backend integrations: route generation, receipt submission, status polling, and balances.
  </Card>
</CardGroup>

## How it works

The Trustware SDK resolves the best available cross-chain route for a given source token and destination chain, handles wallet connection (or accepts your existing wallet), and walks the user through a guided deposit flow ending in a confirmed on-chain transaction.

<Steps>
  <Step title="Install the SDK">
    Add `@trustware/sdk` to your React project with npm or pnpm.
  </Step>

  <Step title="Configure your route">
    Tell Trustware the destination chain and token. Optionally set amount constraints and theme.
  </Step>

  <Step title="Wrap your app with TrustwareProvider">
    Mount the provider once at the top of your component tree to share config and wallet state.
  </Step>

  <Step title="Render TrustwareWidget">
    Drop `<TrustwareWidget />` anywhere in your app, or call the headless core API directly for full control.
  </Step>
</Steps>

## Integration styles

<CardGroup cols={2}>
  <Card title="Drop-in Widget" icon="window" href="/integration/drop-in-widget">
    Full deposit UX with built-in wallet selection; no extra setup required.
  </Card>

  <Card title="Host Wallet Bridge" icon="link" href="/integration/host-wallet">
    Use your Wagmi or viem wallet client with the Trustware widget UI.
  </Card>

  <Card title="Controlled Widget" icon="hand-pointer" href="/integration/controlled-widget">
    Programmatically open/close the widget and control its initial state via a ref.
  </Card>

  <Card title="Headless Core" icon="terminal" href="/integration/headless-core">
    Build a completely custom UI using Trustware's routing, quoting, and transaction APIs.
  </Card>
</CardGroup>
