---
title: "@playstack/search-next"
description: "Next.js App and Pages Router adapters for Playstack search protocols and request context."
tags: ["package","content","search","nextjs","app-router","pages-router","free"]
---

{/* package-access:start */}

> **Free.** MIT licensed. Check preview availability before installing. See [package access](/docs/packages#access-policy).

{/* package-access:end */}

`@playstack/search-next` adapts both Next.js routers to the same `@playstack/search` source and protocol.

```ts
// app/api/search/route.ts
export const GET = createAppRouterSearchHandler(search, protocol)
```

```ts
// pages/api/search.ts
export default createPagesRouterSearchHandler(search, protocol)
```

Repeated Pages Router parameters remain repeated. App Router forwards its native abort signal, while Pages Router derives cancellation from request closure when available. Request-derived authentication, account context, route paths, and cache policy remain application-owned.

{/* package-install:start */}

## Install

After confirming [preview access](/docs/packages#access-policy), install the package at your application's shared Playstack version:

```sh
npm install --save-exact @playstack/search-next@0.1.0-beta.1
```

Check the peer requirements below before choosing a runtime or provider.

{/* package-install:end */}

{/* package-reference:start */}

## API entry points and requirements

Reference snapshot: `@playstack/search-next@0.1.0-beta.1`. Import only the entry point your runtime needs. Paths below are relative to the installed package; use **Go to Definition** in your editor to inspect exact parameters, return types and overloads. Do not import the declaration-file paths directly.

| Public entry point | Declaration file |
| --- | --- |
| `@playstack/search-next` | `./dist/index.d.ts` |
| `@playstack/search-next/app` | `./dist/app.d.ts` |
| `@playstack/search-next/pages` | `./dist/pages.d.ts` |
| `@playstack/search-next/package.json` | No TypeScript declaration (asset or metadata export). |

Node.js engine requirement: `>=20`. This is not a claim that every entry point works in browsers or Workers.

### Peer dependencies

Keep existing framework versions that satisfy these ranges. Install optional peers only when using the corresponding adapter. The package manager resolves ordinary dependencies separately.

| Peer | Compatible range | When needed |
| --- | --- | --- |
| `@playstack/search` | `0.1.0-beta.1` | Required by the package. |

For a complete first program, start with [Getting started](/docs/getting-started). For API lookup and partial-example conventions, see [Reading the reference](/docs/packages#reading-the-reference). Provider failures, lifecycle requirements and application responsibilities remain described in the guide above; types alone do not establish production safety.

{/* package-reference:end */}
