> Documentation index: [Saleor](/llms.txt) · [This section](/developer/llms.txt)
> Source: https://docs.saleor.io/developer/extending/apps/developing-apps/app-sdk/overview

# App SDK Overview

`@saleor/app-sdk` is a TypeScript-first npm library that serves as a foundation for every Saleor app. It includes helpers built for React and serverless functions, like AWS Lambda or Next.JS

You can find `@saleor/app-sdk` on [npm](https://www.npmjs.com/package/@saleor/app-sdk) and [GitHub](https://github.com/saleor/saleor-app-sdk).

<a id="installation"></a>

## Installation

Install `@saleor/app-sdk` by running the following command:

```shell
# Preferred - with pnpm
pnpm add @saleor/app-sdk

# With npm and yarn
npm i @saleor/app-sdk
yarn add @saleor/app-sdk
```

<a id="platforms-support"></a>

## Platforms support

Utilities for server-side operations support multiple platforms. Currently, we support:

-   Next.js (Pages)
-   Next.js (App Router)
-   AWS Lambda (Serverless functions)
-   [FetchAPI](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) (Deno, Cloudflare Workers, etc)

<a id="versioning"></a>

## Versioning

`@saleor/app-sdk` uses semver. We track its [releases and changelogs on GitHub](https://github.com/saleor/saleor-app-sdk/releases).

Hint: See [migration from 0.x to 1.x](/developer/extending/apps/developing-apps/app-sdk/migration-0.x-to-1.x.md) for more information.

<a id="requirements"></a>

## Requirements

-   Saleor support: 3.22 and higher (it may work in older versions, but it's not guaranteed).
-   Next.js support: 14 and higher

<a id="peer-dependencies"></a>

## Peer Dependencies

The SDK has several optional peer dependencies. Install only what you need based on which entry points you use:

| Entry Point | Required Peer Dependencies |
| --- | --- |
| `@saleor/app-sdk/app-bridge` | `react`, `react-dom` |
| `@saleor/app-sdk/app-bridge/next` | `react`, `react-dom`, `next` |
| `@saleor/app-sdk/handlers/next` | `next`, `graphql` |
| `@saleor/app-sdk/handlers/next-app-router` | `next`, `graphql` |
| `@saleor/app-sdk/handlers/fetch-api` | `graphql` |
| `@saleor/app-sdk/handlers/aws-lambda` | `graphql` |
| `@saleor/app-sdk/settings-manager` | \- |
| `@saleor/app-sdk/APL` | \- |
| `@saleor/app-sdk/APL/env` | \- |
| `@saleor/app-sdk/APL/file` | \- |
| `@saleor/app-sdk/APL/upstash` | \- |
| `@saleor/app-sdk/APL/redis` | `redis` |
| `@saleor/app-sdk/APL/vercel-kv` | `@vercel/kv` |
| `@saleor/app-sdk/APL/dynamodb` | `@aws-sdk/client-dynamodb`, `@aws-sdk/lib-dynamodb`, `dynamodb-toolbox` |

note

`EncryptedMetadataManager` from `@saleor/app-sdk/settings-manager` uses Node.js `crypto` by default. For browser usage, provide custom `encryptionMethod` and `decryptionMethod`, or use `MetadataManager` without encryption.

<a id="learn-more"></a>

## Learn more

If you are interested in building Saleor apps using `@saleor/app-sdk`, you may want to check out the following resources:

[**AppBridge** Interface that connects the App to the Dashboard.](/developer/extending/apps/developing-apps/app-sdk/app-bridge.md)

[**APL** Authentication Persistence Layer - an interface for managing App authentication data.](/developer/extending/apps/developing-apps/app-sdk/apl.md)

[**Settings Manager** A utility that helps to build persistency inside your App.](/developer/extending/apps/developing-apps/app-sdk/settings-manager.md)

[**Saleor webhooks** Build fully-typed webhook handlers.](/developer/extending/apps/developing-apps/app-sdk/saleor-webhook.md)
