We’re thrilled to announce that React InstantSearch Hooks package is released as experimental
React Hooks for InstantSearch was a long-awaited feature that lets you create rich search UIs with friendly and modern React primitives. This new library was developed on top of InstantSearch.js, a solid foundation that allows us to implement features faster.
React InstantSearch Hooks is a headless library that exposes InstantSearch Connectors as Hooks, as well as their typings. It doesn’t provide UI components for now.
Please keep in mind that this version is experimental, meaning that it is not production ready. We plan to release a stable version in the coming months.
We’re looking for early feedback and ideas. We recommend trying React InstantSearch Hooks this way:
- If you’ve been using Connectors (and not Widgets); you can use their respective Hooks and change the
- If you’re unfamiliar with Connectors; you can start your new project with Hooks (if it’s not meant to be production ready in the coming months)
Check out how to get started in the documentation.
Note that React InstantSearch Hooks is not compatible with
react-instantsearch-dom. Make sure to use Hooks within the
InstantSearchcomponent coming from
We published React InstantSearch Hooks as experimental and we’re ready to receive user feedback. This is just the first milestone of this library.
Our next step is to support all existing Connectors and provide feature parity with React InstantSearch Core/DOM before stable release, planned for early next year. Once the whole headless API is released, we will start providing UI components based on these Connectors, that we call Widgets.
Our long-term plan is to use the Hooks package in Core, and to rely on the new Core for the DOM package.
Since we’re in the experimental phase, the API may still change. Your feedback and contributions could help shape it for the better. So tell us more:
- Are there confusing parts in the new Hooks API?
- What did you wish was simpler?
- Are there things you wanted to do and couldn’t?
- Anything you would have seen differently?
Let us know below! You can report any bugs in GitHub Issues.