If you want to build a Search experience using our libraries, you have a handful of options. This guide will go over the core parts of our stack and help you decide which library to choose that will best suit your needs.
Search UI React
- Pre-built components
If you want to use React and don’t want to build out all the components of a Search experience from scratch then the React Component Library could be the library for you.
The Search UI React contains fully styled UI components built with HTML and CSS for your search bar, results, facets, filters, and more. It is built on top of our Search Headless library (more on that below) which gives access to state management and interacts with our API. Since the UI components come fully functional and stylized out of the box, using this library provides the quickest way to get your Search experience up and running.
- Building on the web
- Redux for state management
Search Headless is a Redux state management library built in TypeScript, which means it’s perfect for anyone who wants to build a web-based app that also wants to take advantage of some pre-built state management from Redux.
Unlike with our React Component Library, with Search Headless you have to write all the UI yourself. On top of state management, Search Headless also comes with hooks for dispatching actions while allowing for full customizability of both the functionality and UI for the components you decide to build.
Currently, we have React bindings for this library and are building bindings for Vue and Angular too (coming soon!).
This library is also accompanied by our React Site Search Starter sample app (github repo | app) which provides examples of universal and vertical search pages. Read more about universal and vertical search here.
Headless Documentation: Full Documentation
Headless React Documentation: Full Documentation
- Building on the web
- Building a non-React application
- Using Search in a Node.js, server-side application.
Search Core is a Search API Typescript client that has functions for all the different Search API calls. Core doesn’t require access to the DOM, which means this library can fit most use cases, either in the browser or on a Node server, and is compatible with both CommonJS and ES6 imports.
If you’re building a web application but want nothing to do with React or state management, this is the library for you.
You can also use Core to make it easier to create Node webhook endpoints that are used by chatbots. You can find some examples on our Inspiration Hub.
- Can be used anywhere, not necessarily on the web
If you’ve gotten this far, you’re either not building an application for the web, or you’re just curious to see every option available to you. All the above libraries are built on top of the Search API, a REST API used for querying data. It contains different endpoints for
Universal Search and