All you need to get started is:
- A container to inject the experience into
- Data to fill the autocomplete with
- Any Virtual DOM solution (JavaScript, Preact, React, Vue, etc.)
The data that populates the autocomplete results are called sources. You can use whatever you want in your sources: a static set of searches terms, search results from an external source like an Algolia index, recent searches, and more.
By configuring just those two required parameters (container
and getSources
) you can have an interactive autocomplete experience. The library creates an input and provides the interactivity and accessibility attributes, but you're in full control of the DOM elements to output.
Documentation •
API •
Playground
The recommended way to get started is with the autocomplete-js
package. It includes everything you need to render a JavaScript autocomplete experience.
Otherwise, you can install the autocomplete-core
package if you want to build a renderer from scratch.
All Autocomplete packages are available on the npm registry.
yarn add @kumoai/autocomplete-js
# or
npm install @kumoai/autocomplete-js
If you don't use a package manager, you can use the HTML script
element:
<script src="https://cdn.jsdelivr.net/npm/@kumoai/autocomplete-js"></script>
<script>
const { autocomplete } = window['@kumoai/autocomplete-js'];
</script>
To get started, you need a container for your autocomplete to go in. If you don't have one already, you can insert one into your markup:
<div id="autocomplete"></div>
Then, insert your autocomplete into it by calling the autocomplete
function and providing the container
. It can be a CSS selector or an Element.
Make sure to provide a container (e.g., a div
), not an input
. Autocomplete generates a fully accessible search box for you.
import { autocomplete } from '@kumoai/autocomplete-js';
autocomplete({
container: '#autocomplete',
// ...
});
Continue reading our Getting Started guide.
The documentation offers a few ways to learn about the Autocomplete library:
- Read the Core Concepts to learn more about underlying principles, like Sources and State.
- Follow the Guides to understand how to build common UX patterns.
- Refer to API reference for a comprehensive list of parameters and options.
- Try out the Playground where you can fork a basic implementation and play around.
You can find more on the documentation.
Package | Description | Documentation |
---|---|---|
autocomplete-js |
JavaScript package for Autocomplete | Documentation |
autocomplete-core |
JavaScript core primitives to build an autocomplete experience | Documentation |
autocomplete-plugin-recent-searches |
A plugin to add recent searches to Autocomplete | Documentation |
autocomplete-plugin-query-suggestions |
A plugin to add query suggestions to Autocomplete | Documentation |
autocomplete-plugin-algolia-insights |
A plugin to add Algolia Insights to Autocomplete | Documentation |
autocomplete-plugin-redirect-url |
A plugin to enable redirect URLs | Documentation |
autocomplete-plugin-tags |
A plugin to manage and display a list of tags in Autocomplete | Documentation |
autocomplete-preset-algolia |
Presets to use Algolia features with Autocomplete | Documentation |
autocomplete-theme-classic |
Classic theme for Autocomplete | Documentation |
See the awesome experiences people built with Autocomplete:
Find more in our Showcase.
Check out sandboxes using Autocomplete.