> ## 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.

# What the Developer SDK Does

The Swig Developer SDK is the current hosted wallet SDK for TypeScript and
Python.

Your server keeps the API key. Your app prepares wallet operations on the
server. Your client signs only the prepared transactions it is responsible for.

## Choose your language

Install the SDK for your server runtime. The examples throughout these docs use
the same TypeScript and Python selector.

<Tabs>
  <Tab title="TypeScript">
    ```bash theme={null}
    bun add @swig-wallet/developer-sdk
    ```
  </Tab>

  <Tab title="Python">
    ```bash theme={null}
    pip install swig-developer-sdk
    ```
  </Tab>
</Tabs>

## What you can build

With this SDK, you can:

* create wallets from a backend route
* prepare transfers, swaps, and grouped wallet operations
* build a transaction from custom instructions for an existing wallet
* add guardian-based recovery flows
* submit signed transactions through Swig's sponsor path
* expose all of that through Next.js, NestJS, a Python proxy handler, or your
  own backend routes

## Use this SDK when

* your backend should keep the Swig API key
* your client should only sign prepared transactions
* you want hosted wallet creation, movement, recovery, or sponsored submission
* you want framework route helpers instead of wiring each endpoint by hand

## Three ways to integrate

* use the server SDK directly
* use a built-in TypeScript framework helper or the Python proxy handler
* use the browser client against your own proxy routes

## Choose the matching SDK surface

* Use `@swig-wallet/developer-sdk` for hosted wallet preparation and keep its
  API key on the server.
* Use `@swig-wallet/classic`, `@swig-wallet/kit`, or `swig-sdk` for direct
  protocol integration.
* Keep existing `@swig-wallet/developer` integrations when they depend on its
  legacy policy helpers.

## Where to go next

* Use [Choose a Path](/developer-sdk/integration-paths) first
* Use [Create Wallets](/developer-sdk/create-wallets) when you are ready to
  prepare your first wallet
* Use [Client Signing](/developer-sdk/client-signing) and
  [Transfer SOL and Tokens](/developer-sdk/transfers-swaps-and-signing) for the
  day-to-day wallet path
