I'd like to use Algolia (a cloud-based search provider) for building my search indexes instead of using SOLR. Is that possible? How could I get started?


Have you checked out the custom search provider for Algolia here?

  • Just to add a bit of "info for newbies" to this perfect answer. Sitecore is a simple set of items in databases (duh) which are combined with presentation files to create web pages (I know that). This said, an outside crawler can simply swipe the web pages (Google GSA, Coveo Web Connector) or the database content (Coveo DB and Coveo Sitecore Legacy Connector, and probably others). – Simon Langevin Oct 13 '16 at 17:44
  • Second part.... Now Sitecore released the Search Provider in version 7 with the default Lucene. The providers declare themselves as indexes in the Sitecore.ContentSearch namespace. This will then tell Sitecore who are the indexes. This is the approach used by Solr, Coveo and any third parties wishing to integrate in Sitecore. I would always recommend products using the Search Provider approach since they will be reactive to the indexing and publishing pipelines. This seems to be the case of Algolia here. – Simon Langevin Oct 13 '16 at 17:46
  • Third part... Note that you could always create your how search provider in order to send your content to your favorite engine, such as ElasticSearch or the Coveo Push API. – Simon Langevin Oct 13 '16 at 17:47

There is no built in search provider / functionality for Algolia as oppose to Lucene / Solr / Azure Search.

To support Algolia as search provider you would need to have these functionalities:

  1. Create / Update Index or shortly indexing
  2. Search capabilities

1) Indexing

Can be achieved using repository mentioned already by Michael in his answer for Sitecore 7-8.x -> https://github.com/dharnitski/Sitecore.Algolia

For Sitecore 9.1+ you can use my fork of that repository -> https://tothecore.sk/2019/05/21/algolia-index-provider-for-sitecore-9-1

I have made there some significant changes:

  • .NET Target Framework bumped to 4.7.2
  • Sitecore referenced nuget packages bumped to Sitecore 9.1 versions
  • Removed completely Algolia.Search project and replaced it with 5.2.1 version of Algolia.Search nuget which makes solution much simpler and future proof; I have used version 5.2.1 as it's the last to use Newtonsoft.JSON 11.0.2 so same as Sitecore 9.1 uses not to have version conflicts
  • Removed switches for old Sitecore 8 versions as needed for Sitecore 9.1

2) Searching

Can be easily achieved without implementing search provider as Algolia uses it's Javascript library (similarly to Coveo) called InstantSearch: https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/js/

They have implementations available for various JS libraries / frameworks like Angular, React, Vue, ...

You can also use their c# api client for searching -> https://www.algolia.com/doc/api-client/getting-started/install/csharp/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.