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

# Install the App Kit SDK

> Install the App Kit SDK and your preferred adapter to start building apps

Installing the App Kit SDK gives you every capability (Send, Bridge, Swap, and
Unified Balance) in a single package. To get started, install the latest version
and the adapter that fits your environment.

<Note>
  An API key from [Circle Console](https://console.circle.com/api-keys) is
  optional for [Swap](/app-kit/swap) but recommended for production. Without one,
  swap requests run against a rate limit. Add one if you hit rate limit errors or
  expect high request volume.

  Upgrading an existing Swap integration? Rename `kitKey` to `apiKey` in the swap
  config.
</Note>

<Steps>
  <Step title="Install the core package">
    <CodeGroup>
      ```bash npm theme={null}
      npm install @circle-fin/app-kit
      ```

      ```bash yarn theme={null}
      yarn add @circle-fin/app-kit
      ```
    </CodeGroup>

    <Accordion icon="circle-info" title="Need a lighter install? Individual App Kits are available">
      The App Kit SDK includes every capability in a single package. Or, install kits individually:

      <Tabs>
        <Tab title="Bridge Kit">
          <CodeGroup>
            ```bash npm theme={null}
            npm install @circle-fin/bridge-kit
            ```

            ```bash yarn theme={null}
            yarn add @circle-fin/bridge-kit
            ```
          </CodeGroup>
        </Tab>

        <Tab title="Swap Kit">
          <CodeGroup>
            ```bash npm theme={null}
            npm install @circle-fin/swap-kit
            ```

            ```bash yarn theme={null}
            yarn add @circle-fin/swap-kit
            ```
          </CodeGroup>
        </Tab>

        <Tab title="Unified Balance Kit">
          <CodeGroup>
            ```bash npm theme={null}
            npm install @circle-fin/unified-balance-kit
            ```

            ```bash yarn theme={null}
            yarn add @circle-fin/unified-balance-kit
            ```
          </CodeGroup>
        </Tab>
      </Tabs>
    </Accordion>
  </Step>

  <Step title="Install your preferred adapter">
    <Tabs>
      <Tab title="Viem">
        <CodeGroup>
          ```bash npm theme={null}
          npm install @circle-fin/adapter-viem-v2 viem
          ```

          ```bash yarn theme={null}
          yarn add @circle-fin/adapter-viem-v2 viem
          ```
        </CodeGroup>
      </Tab>

      <Tab title="Ethers">
        <CodeGroup>
          ```bash npm theme={null}
          npm install @circle-fin/adapter-ethers-v6 ethers
          ```

          ```bash yarn theme={null}
          yarn add @circle-fin/adapter-ethers-v6 ethers
          ```
        </CodeGroup>
      </Tab>

      <Tab title="Solana">
        <CodeGroup>
          ```bash npm theme={null}
          npm install @circle-fin/adapter-solana-kit @solana/kit @solana/web3.js
          ```

          ```bash yarn theme={null}
          yarn add @circle-fin/adapter-solana-kit @solana/kit @solana/web3.js
          ```
        </CodeGroup>

        If bridging, you should also install an EVM adapter (Viem or Ethers).

        <Note>
          For the [Bridge tokens across blockchains](/app-kit/quickstarts/bridge-tokens-across-blockchains#solana) quickstart
          and [adapter setup](/app-kit/tutorials/adapter-setups#solana) examples, the same
          adapter is used with `@solana/kit` and `@solana/web3.js`.
        </Note>
      </Tab>

      <Tab title="Circle Wallets">
        <Badge color="blue">server-side only</Badge>

        If you have a [Circle Wallets](https://developers.circle.com/wallets) account, you can use the Circle Wallets adapter to
        connect to developer-controlled wallets and Circle Contracts.

        <CodeGroup>
          ```bash npm theme={null}
          npm install @circle-fin/adapter-circle-wallets
          ```

          ```bash yarn theme={null}
          yarn add @circle-fin/adapter-circle-wallets
          ```
        </CodeGroup>
      </Tab>
    </Tabs>
  </Step>
</Steps>
