1
0
Fork 0
📘 The easiest way to add search to your documentation.
Find a file
2026-03-27 11:44:15 -07:00
.circleci chore(ci): Revert yarn cache key 2025-12-18 15:02:03 -05:00
.codesandbox chore(deps): update lint dependency (#1120) 2021-11-02 12:06:22 +01:00
.github chore: rename next branch to main (#1478) 2022-08-02 17:49:20 +02:00
.yarn/releases chore(deps): dependencies 2024-11-25 (#2366) 2025-01-20 18:01:57 +01:00
adapters/docusaurus-theme-search-algolia chore: release v4.6.2 (#2875) 2026-03-26 13:52:48 +01:00
cypress fix: add docsearch 4 to website (#2767) 2025-09-22 10:52:07 +02:00
examples chore: release v4.6.2 (#2875) 2026-03-26 13:52:48 +01:00
packages chore(composable): add DocSearchButton + DocSearchModal example (#2876) 2026-03-27 11:44:15 -07:00
scripts chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
.editorconfig chore: more files to root 2020-09-01 11:54:48 +02:00
.env.sample chore: release v4.6.1 2026-03-25 15:16:07 +01:00
.gitignore fix: pin preact version 2026-01-13 19:43:17 +01:00
.nvmrc fix: add docsearch 4 to website (#2767) 2025-09-22 10:52:07 +02:00
.prettierignore fix(types): export the types folder (#2332) 2024-11-04 10:20:43 +01:00
.prettierrc chore(prettier): remove endOfLine 2020-12-01 18:30:36 +01:00
.stylelintrc.json chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
.yarnrc.yml chore(deps): dependencies 2024-11-25 (#2366) 2025-01-20 18:01:57 +01:00
AGENTS.md chore: Add agents and claude files (#2836) 2026-01-09 11:12:03 -05:00
bundlesize.config.json feat(askai): add thread depth limit logic (#2812) 2025-12-16 08:59:28 +00:00
CHANGELOG.md chore: release v4.6.2 (#2875) 2026-03-26 13:52:48 +01:00
CLAUDE.md chore: Add agents and claude files (#2836) 2026-01-09 11:12:03 -05:00
CODEOWNERS Remove myself from code owners (#2618) 2025-06-05 09:22:12 -04:00
CONTRIBUTING.md fix: use vite instead of parcel in the examples (#2329) 2024-10-31 16:44:34 +01:00
cypress.config.ts chore(deps): upgrade cypress (#2333) 2024-11-04 10:06:54 +01:00
eslint.config.mjs feat(docusaurus-adapter): support docsearch key and adapter docs (#2858) 2026-02-17 17:53:12 +01:00
global.d.ts chore(deps): update lint dependency (#1120) 2021-11-02 12:06:22 +01:00
lerna.json chore: release v4.6.2 (#2875) 2026-03-26 13:52:48 +01:00
LICENSE chore: more files to root 2020-09-01 11:54:48 +02:00
netlify.toml feat(docs): Add utm_ params to apply links (#2817) 2025-12-10 09:50:33 -05:00
nx.json chore: release v4.5.0-beta.0 (#2834) 2026-01-08 20:32:06 +01:00
package.json fix: rollup version 2026-03-26 13:50:12 +01:00
README.md docs(readme): add "Used by" badge (#2860) 2026-02-17 16:15:26 +01:00
renovate.json chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
rollup.base.config.js feat: a11y and ux tweaks (#2712) 2025-08-14 20:04:30 +02:00
ship.config.mjs feat(docusaurus-adapter): support docsearch key and adapter docs (#2858) 2026-02-17 17:53:12 +01:00
tsconfig.base.client.json feat(docusaurus-adapter): support docsearch key and adapter docs (#2858) 2026-02-17 17:53:12 +01:00
tsconfig.base.json feat(docusaurus-adapter): support docsearch key and adapter docs (#2858) 2026-02-17 17:53:12 +01:00
tsconfig.declaration.json chore: more files to root 2020-09-01 11:54:48 +02:00
tsconfig.json fix: revert module resolution 2025-12-18 12:50:16 -05:00
vite.config.mts chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
yarn.lock chore(composable): add DocSearchButton + DocSearchModal example (#2876) 2026-03-27 11:44:15 -07:00

DocSearch

The easiest way to add search to your documentation for free.

Netlify Status npm version Used by License

DocumentationJavaScript PlaygroundReact Playground


DocSearch crawls your documentation, pushes the content to an Algolia index and provides a dropdown search experience on your website.

Preview

Ask AI demo

Usage

Don't have your Algolia credentials yet? Apply to DocSearch!

JavaScript

Installation

yarn add @docsearch/js@4
# or
npm install @docsearch/js@4

If you dont want to use a package manager, you can use a standalone endpoint:

<script src="https://cdn.jsdelivr.net/npm/@docsearch/js@4"></script>

Get started

To get started, you need a container for your DocSearch component to go in. If you dont have one already, you can insert one into your markup:

<div id="docsearch"></div>

Then, insert DocSearch into it by calling the docsearch function and providing the container. It can be a CSS selector or an Element.

Make sure to provide a container (for example, a div), not an input. DocSearch generates a fully accessible search box for you.

import docsearch from '@docsearch/js';

import '@docsearch/css';

docsearch({
  container: '#docsearch',
  appId: 'YOUR_APP_ID',
  indexName: 'YOUR_INDEX_NAME',
  apiKey: 'YOUR_SEARCH_API_KEY',
});

React

Installation

yarn add @docsearch/react@4
# or
npm install @docsearch/react@4

If you dont want to use a package manager, you can use a standalone endpoint:

<script src="https://cdn.jsdelivr.net/npm/@docsearch/react@4"></script>

Get started

DocSearch generates a fully accessible search box for you.

import { DocSearch } from '@docsearch/react';

import '@docsearch/css';

function App() {
  return (
    <DocSearch
      appId="YOUR_APP_ID"
      apiKey="YOUR_SEARCH_API_KEY"
      indices=["YOUR_ALGOLIA_INDEX"]
    />
  );
}

export default App;

Styling

Read documentation →

DocSearch is made of the following repositories:

Used by

DocSearch is used by Bootstrap, Cheerio, Element Plus, Authelia, MDX, VitePress and many more.

Used by Generated with usedby.dev

License

MIT