AACsearch для Next.js
Добавьте мгновенный поиск в ваше приложение Next.js. Поддерживаются Server Components, Route Handlers и Client Components.
Поиск для Next.js-приложений
SDK браузера AACsearch работает с App Router Next.js, Server Components и Client Components.
TypeScript SDK
Установите npm-пакет AACsearch. Полные типы TypeScript, нулевые внешние зависимости, 8KB в сжатом виде. Работает в любой JS-среде выполнения.
React Server Components
Вызывайте API AACsearch непосредственно из Server Components. Никаких расходов на клиентский бандл и гидратацию для страниц с результатами поиска.
Поддержка App Router
Используйте AACsearch в Server Components с Node.js SDK или в Client Components с браузерным SDK.
Интеграция с кэшем Next.js
Используйте fetch с next revalidate или ISR для кэширования результатов поиска. AACsearch соблюдает стандартные заголовки HTTP Cache-Control.
Клиентский виджет
Добавьте виджет AACsearch в макет Next.js одним тегом script или используйте React SDK для полностью настраиваемого интерфейса поиска.
Edge-совместимая аналитика
Отслеживайте события поиска из сети Vercel Edge. Нет холодных стартов, нет риска таймаута для лёгких аналитических вызовов.
Начните за 3 шага
Изменения в бэкенде не требуются. SDK AACsearch работает напрямую из вашего приложения Next.js.
- 1
Шаг 1
Установите пакет
Выполните npm install @aacsearch/client в вашем проекте Next.js.
- 2
Шаг 2
Настройте клиент
Создайте поисковый клиент с вашим API-ключом и slug индекса. Храните ключ на сервере или используйте ограниченный токен только для чтения в клиентских компонентах.
- 3
Шаг 3
Поиск из любого компонента
Вызовите client.search() из Server Component или используйте хук useSearch в Client Component. Результаты типизированы.
Минимальный пример Server Component
import { AACSearchClient } from '@aacsearch/client'
const client = new AACSearchClient({
apiKey: process.env.AACSEARCH_API_KEY!,
index: 'products',
})
export default async function ProductSearch() {
const results = await client.search({ q: 'running shoes', limit: 10 })
return (
<ul>
{results.hits.map((hit) => (
<li key={hit.id}>{hit.name}</li>
))}
</ul>
)
}Часто задаваемые вопросы
Запустите Search OS за один вечер
Создайте индекс, добавьте документы и подключите поиск из приложения. Бесплатного тарифа достаточно для прототипа.