{"id":18711720,"url":"https://github.com/dharnitski/Sitecore.Algolia","last_synced_at":"2025-04-12T12:30:46.780Z","repository":{"id":144141610,"uuid":"54084087","full_name":"dharnitski/Sitecore.Algolia","owner":"dharnitski","description":"Sitecore search provider for Algolia","archived":false,"fork":false,"pushed_at":"2016-12-28T20:27:02.000Z","size":4597,"stargazers_count":11,"open_issues_count":0,"forks_count":6,"subscribers_count":6,"default_branch":"develop","last_synced_at":"2024-04-28T14:05:09.038Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dharnitski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-03-17T03:00:58.000Z","updated_at":"2023-03-05T03:14:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"4981fad8-bb6a-4d8a-ab00-23de7e342861","html_url":"https://github.com/dharnitski/Sitecore.Algolia","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dharnitski%2FSitecore.Algolia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dharnitski%2FSitecore.Algolia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dharnitski%2FSitecore.Algolia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dharnitski%2FSitecore.Algolia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dharnitski","download_url":"https://codeload.github.com/dharnitski/Sitecore.Algolia/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223174271,"owners_count":17100266,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T12:40:37.773Z","updated_at":"2024-11-07T12:40:40.500Z","avatar_url":"https://github.com/dharnitski.png","language":"C#","funding_links":[],"categories":["C# #","Community Integrations"],"sub_categories":[],"readme":"# Sitecore search provider for Algolia\n\nAlgolia is a Hosted Search API that delivers instant and relevant results. This project implements Search Provider for Algolia in Sitecore.\n\n## How to setup\n\nFind right Nuget package for your Sitecore version. Currenly project supports all Sitecore versions from 7.0 to 8.1 you can find versions matrix below:\n\n* [Algolia.Sitecore.8.2](https://www.nuget.org/packages/Algolia.Sitecore.8.2/) for Sitecore 8.2\n* [Algolia.Sitecore.8.1](https://www.nuget.org/packages/Algolia.Sitecore.8.1/) for Sitecore 8.1\n* [Algolia.Sitecore.8](https://www.nuget.org/packages/Algolia.Sitecore.8/) for Sitecore 8.0\n* [Algolia.Sitecore.7](https://www.nuget.org/packages/Algolia.Sitecore.7/) for Sitecore 7.0-7.2\n\nAdd Nuget package to your Visual Studio web project for Sitecore. Package will add all required DLLs. Config files should be implemented manually.\n\nBelow you can find instructions for configs setup applicable for Sitecore 8.1. Different Sitecore versions may requre slightly different configuration. Use default Lucene search config files to identify these variations.\n\nTest project includes sample configuration files:\n* [Index Configuration](https://github.com/dharnitski/Sitecore.Algolia/blob/develop/Score.ContentSearch.Algolia.Tests/SampleConfiguration/AlgoliaTestConfiguration.Sc81.config) \n* [Index Definition](https://github.com/dharnitski/Sitecore.Algolia/blob/develop/Score.ContentSearch.Algolia.Tests/SampleConfiguration/AlgoliaTestIndex.Sc8.config) \n\nCopy these files into *site-root/App_Config/Include* folder. Now we need to make some changes to connect index with your Algolia account and filter data to include only relevant content.\n\n### Setup Index Configuration\n\nFind commented *include* section \n\n    \u003c!--\u003cinclude hint=\"list:AddIncludedTemplate\"\u003e\n        \u003cHomePage\u003e{9CAAECFD-3BEB-44B1-9BE5-F7E30811EF2D}\u003c/HomePage\u003e\n        \u003cContentPage\u003e{520A275F-6104-4690-8BCD-36B86BAD8D4E}\u003c/ContentPage\u003e\n    \u003c/include\u003e--\u003e\n\nUncomment it and replace Ids in that section with Ids of templates you want to index. Typically that will be templates for pages.\n\n### Setup Index Definition\n\nIndex has some parameters required for Algolia connection:\n\n* applicationId - Application ID\n* fullApiKey - Admin API Key\n* indexName - Index Name.\n\nAll these values defined in [Algolia Api Keys](https://www.algolia.com/api-keys) page.\n\n    \u003cSite\u003ewebsite\u003c/Site\u003e\n\nSite parameter stores name of your site. That value will be used to define some site specific values like *targetHostName*.\n\n    \u003cstrategies hint=\"list:AddStrategy\"\u003e\n        \u003cstrategy ref=\"contentSearch/indexConfigurations/indexUpdateStrategies/syncMaster\" /\u003e\n    \u003c/strategies\u003e\n\nStrategy is used to control what causes by Sitecore to update data in search index. This is standard Sitecore config and you can find more information about that in [John West's blog post](http://www.sitecore.net/learn/blogs/technical-blogs/john-west-sitecore-blog/posts/2013/04/sitecore-7-index-update-strategies.aspx) \n\n    \u003clocations hint=\"list:AddCrawler\"\u003e\n        \u003ccrawler type=\"Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch\"\u003e\n            \u003cDatabase\u003emaster\u003c/Database\u003e\n            \u003cRoot\u003e/sitecore/content/Home\u003c/Root\u003e\n        \u003c/crawler\u003e\n    \u003c/locations\u003e\n\nCrawler is a class that reads data from Sitecore database before it will be added to the index. This is also standard Sitecore configuration, although we need to do some changes here.\n* Database - align this with strategy. *syncMaster* should work with *master* database and *onPublishEndAsync* should work with *web* or whatever is your publishing target database.\n* Root - Crawling root item. Typically that will be homepage of your site  \n\n## Why another provider?\n\nSitecore supports Lucene and Solr, other vendors have their engines like Coveo. So, why anybody wants to build one more provider?\nBecause it is different:\n\n* Algolia is cool, blazing fast, requires no maintenance and easily configurable\n* Algolia includes modern [instantsearch.js](https://community.algolia.com/instantsearch.js) UX Framefork that simplifies construction of custom Search pages   \n* Search Provider designed for Domain search and Multitenancy\n\n\n## Is there anything you cannot do with this provider?\n\nAlgolia is a razor comparing to swiss army knife. Index designed for speed and easy use and do not implement all the features that generic search engine has.\nAs a result Algolia cannot replace default Sitecore indexes.\n\nThis provider includes only crawling part (code that sends data to the index). Linq to Search is not included and not on the roadmap. \nTo make it fast, search has to be run on client side. Check Algloa JS UI [instantsearch.js](https://community.algolia.com/instantsearch.js) or join me in [Algolia simple UI for Sitecore](https://github.com/dharnitski/Algolia.Sitecore.UI)  \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdharnitski%2FSitecore.Algolia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdharnitski%2FSitecore.Algolia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdharnitski%2FSitecore.Algolia/lists"}