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

# Choose a Product

Swig has five product surfaces. Choose the one that matches how your app will integrate.

## Quick routing

| If you are trying to...                                               | Start here                           |
| :-------------------------------------------------------------------- | :----------------------------------- |
| Understand the on-chain protocol and repo layout                      | [Swig Protocol](/protocol)           |
| Integrate directly with Swig wallets from TypeScript or Rust          | [Swig Protocol SDK](/reference)      |
| Prepare wallet operations behind an API key and sign them client-side | [Swig Developer SDK](/developer-sdk) |
| Call hosted backend endpoints directly over REST                      | [Swig Developer API](/developer-api) |
| Add OAuth, email OTP, or SMS OTP login flows                          | [Swig IDP SDK](/idp-sdk)             |

## Product map

### Swig Protocol

The on-chain wallet system in `swig-wallet`.

* Use it when you need to understand permissions, sessions, recovery, or program behavior.
* Start at [Protocol](/protocol).

### Swig Protocol SDK

Direct TypeScript and Rust integrations with the protocol.

* Use it when your app talks to Swig wallets directly and controls its own authority or signing flows.
* Start at [Protocol SDK](/reference).

### Swig Developer SDK

Hosted transaction preparation through the developer portal and `@swig-wallet/developer-sdk`.

* Use it when you want the backend to prepare wallet creation, transfers, swaps, or recovery flows and the client only signs what it must sign.
* Start at [Developer SDK](/developer-sdk).

### Swig Developer API

REST access to Swig's hosted backend services.

* Use it when you need exact endpoint paths, payloads, response fields, or direct API integration without SDK wrappers.
* Start at [Developer API](/developer-api).

### Swig IDP SDK

Login-provider SDKs in `swig-idp-sdk`.

* Use it when you need OAuth or OTP sign-in that creates Swig sessions for web or Expo apps.
* Start at [IDP SDK](/idp-sdk).

## Relationship between the four

* The **Swig Protocol** is the on-chain foundation.
* The **Swig Protocol SDK** integrates with that protocol directly.
* The **Swig Developer SDK** uses hosted backend services to prepare and operate on Swig wallets through API-key access.
* The **Swig Developer API** documents the REST endpoints exposed by those hosted backend services.
* The **Swig IDP SDK** handles end-user identity and session bootstrap for login-provider flows.
