1
0
Fork 0
📘 The easiest way to add search to your documentation.
Find a file
2025-08-27 10:10:04 +02:00
.circleci feat(v4): release v4 (#2555) (#2666) 2025-07-17 15:53:46 +02: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
cypress feat(v4): release v4 (#2555) (#2666) 2025-07-17 15:53:46 +02:00
examples chore: release v4.0.0-beta.7 (#2717) 2025-08-14 21:00:32 +02:00
packages fix(docsearch-js): provide unmounting function (#2602) 2025-08-27 10:10:04 +02: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: more files to root 2020-09-01 11:54:48 +02:00
.gitignore feat(v4): release v4 (#2555) (#2666) 2025-07-17 15:53:46 +02:00
.nvmrc chore(deps): dependencies 2024-11-18 (#2350) 2024-11-18 09:47:37 +01: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
bundlesize.config.json fix: cater for transformItems to use DS with custom indices (#2705) 2025-08-08 16:24:24 +02:00
CHANGELOG.md chore: release v4.0.0-beta.7 (#2717) 2025-08-14 21:00:32 +02: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 chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
global.d.ts chore(deps): update lint dependency (#1120) 2021-11-02 12:06:22 +01:00
lerna.json chore: release v4.0.0-beta.7 (#2717) 2025-08-14 21:00:32 +02:00
LICENSE chore: more files to root 2020-09-01 11:54:48 +02:00
netlify.toml feat(onboarding): Docsearch new sign up page (#2606) 2025-07-02 11:46:07 -04:00
package.json feat: a11y and ux tweaks (#2712) 2025-08-14 20:04:30 +02:00
README.md feat(v4): release v4 (#2555) (#2666) 2025-07-17 15:53:46 +02: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 fix(script): use mjs for shipjs (#2462) 2025-01-21 09:44:19 +01:00
tsconfig.declaration.json chore: more files to root 2020-09-01 11:54:48 +02:00
tsconfig.json chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
vite.config.mts chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
yarn.lock chore: release v4.0.0-beta.7 (#2717) 2025-08-14 21:00:32 +02:00

DocSearch

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

Netlify Status npm version 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

Screencast

Light Dark
Light preview Dark preview

Usage

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

JavaScript

Installation

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

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

<script src="https://cdn.jsdelivr.net/npm/@docsearch/js@beta"></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@beta
# or
npm install @docsearch/react@beta

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

<script src="https://cdn.jsdelivr.net/npm/@docsearch/react@beta"></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"
      indexName="YOUR_INDEX_NAME"
      apiKey="YOUR_SEARCH_API_KEY"
    />
  );
}

export default App;

Styling

Read documentation →

DocSearch is made of the following repositories:

License

MIT