We love open-source software. So when the time came to re-imagine how we want to integrate Search.io search into websites, e-commerce stores, and apps we naturally looked at existing libraries to give us a head start. Unfortunately, we came up short in our search. Not that there aren’t any good libraries out there, there are. But they didn’t meet our requirements around flexibility and vendor independence.
So we decided to build our own React Search SDK. Our goal: give developers greater control over styling, improved filtering, and a way to use hooks with their own content library.
To do that, we've broken the SDK into four packages:
- @sajari/react-components - Core components that allow you to build a beautiful search interface with any back end. Of course we would love for you to use Search.io.
- @sajari/react-hooks - Hooks allowing you to use any component library with Sajari's amazingly fast and powerful search back end.
- @sajari/react-search-ui - Easy to use search components to quickly build a beautiful search interface. If you've used previous versions of our SDK, you'll be most familiar with this package.
- @sajari/server - Helpers for server-side rendering your React application using Search.io search so you can offer the best possible user experience and SEO optimizations.
We've created a package of accessible, beautiful search UI components that we think are perfect for building a search UI using any search backend. Try them in your app today.
We've added a hooks package so you can use the power of Sajari's search with your own component library. Hooks are a new addition in React 16.8. They let you use state and other React features without writing a class. Learn more about hooks in the docs.
🏎 Search UI
We created a new package to enable you to quickly build a powerful search interface using pre-built components. If you used the previous React SDK, this will feel familiar. Simply include the components in your application and all logic is taken care of, automatically. Learn more about Search UI in the docs.
- We’ve added a new Filter component that supports a range of input methods.
- We’ve added a grid view to the Results component.
- We improved the overall look and feel and made it more flexible.
- Bundle size is now 11.3% smaller and it supports tree-shaking which means any unused code is stripped.
- We improved the developer experience and documentation.
- It’s now all open-source under the MIT license.