1
0
Fork 0
📘 The easiest way to add search to your documentation.
Find a file
renovate[bot] 36b753d3bd
fix(deps): update dependency postcss-preset-env to v10.6.1 (#3023)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-15 10:56:05 +00:00
.circleci chore(deps): update node.js to v18.20.8 (#2990) 2026-08-08 22:33:55 +00: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): update yarn to v4.7.0 (#2524) 2025-03-02 00:21:46 +00:00
cypress fix(ui): compensate for scrollbar (#2413) 2025-01-21 09:41:27 +01:00
examples chore: release v3.8.3 (#2463) 2025-01-21 15:23:25 +01:00
packages fix(deps): update dependency postcss-preset-env to v10.6.1 (#3023) 2026-08-15 10:56:05 +00: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 chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
.nvmrc chore(deps): update node.js to v18.20.8 (#2548) 2025-03-29 00:51:11 +00: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): update yarn to v4.7.0 (#2524) 2025-03-02 00:21:46 +00:00
bundlesize.config.json fix(ui): compensate for scrollbar (#2413) 2025-01-21 09:41:27 +01:00
CHANGELOG.md chore: release v3.8.3 (#2463) 2025-01-21 15:23:25 +01:00
CODEOWNERS chore: add CODEOWNERS (#1535) 2022-09-01 13:38:06 +02: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 v3.8.3 (#2463) 2025-01-21 15:23:25 +01:00
LICENSE chore: more files to root 2020-09-01 11:54:48 +02:00
netlify.toml fix: upgrade algoliasearch to v5 (#2326) 2024-10-30 15:46:38 +01:00
package.json chore(deps): update dependency stylelint-no-unsupported-browser-features to v8.1.1 (#3015) 2026-08-14 23:24:45 +00:00
README.md chore: rename next branch to main (#1478) 2022-08-02 17:49:20 +02:00
renovate.json chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01:00
rollup.base.config.js chore(deps): dependencies 2024-11-04 (#2335) 2024-11-04 18:15:51 +01: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 fix(deps): update dependency postcss-preset-env to v10.6.1 (#3023) 2026-08-15 10:56:05 +00: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@3
# or
npm install @docsearch/js@3

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

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

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

<script src="https://cdn.jsdelivr.net/npm/@docsearch/react@3"></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