InstantSearch.js v4 is released!

InstantSearch.js v4 is now fully released :tada:

This release is focused on two main features: Federated search, and bundle size reduction.

Federated search, is the feature where you search through multiple types of content with the same experience, but with separate result lists. In the past we have also called this feature “multi-index search”. This feature helps you make more efficient UIs with multiple result lists, autocomplete, nested interfaces and query suggestions. You can read more about the new index widget in the documentation.

The second main feature is bundle size reduction. This is a bottom-up process where we started by removing Lodash from our bundle. While the library has many useful features, it was a major part of our compiled code. We have also updated to Preact X, the latest version of Preact internally. This allows us to use more modern §react features in the future, which have a more efficient bundling pattern.

You can read more details on our choices by following the original posts about the beta releases.

Even though all this internally were major refactors, this should not have a big impact on how you are using InstantSearch. For the few things which did change, a migration guide can be found in the documentation. Don’t hesitate to reach out if anything is unclear from that guide, so we can fix it for everyone.

Note, if you are using the places.js InstantSearch widget, it is not compatible with InstantSearch v4. However, we took this opportunity to make it a real part of InstantSearch.js, and is now accessible as a widget of InstantSearch. You can use it with a placesReference.

Hope to hear from all of you with any feedback you have, we are very excited about this release!