medusa-plugin-meilisearch-multi_indexes
v0.0.1
Published
Meilisearch search plugin for Medusa - based on the medusa-plugin-meilisearch but with support for multiple indexes
Downloads
2
Maintainers
Readme
MeiliSearch
*** This is a WIP, and not toroughly tested.
Provide powerful indexing and searching features in your commerce application with MeiliSearch.
MeiliSearch Plugin Documentation | Medusa Website | Medusa Repository
Features
- Flexible configurations for specifying searchable and retrievable attributes.
- Ready-integration with Medusa's Next.js starter storefront.
- Utilize MeiliSearch's powerful search functionalities including typo-tolerance, synonyms, filtering, and more.
Prerequisites
How to Install
1. Run the following command in the directory of the Medusa backend:
npm install medusa-plugin-meilisearch-multi-indexes
2. Set the following environment variables in .env
:
MEILISEARCH_HOST=<YOUR_MEILISEARCH_HOST>
MEILISEARCH_API_KEY=<YOUR_MASTER_KEY>
3. In medusa-config.js
add the following at the end of the plugins
array:
const plugins = [
// ...
{
resolve: `medusa-plugin-meilisearch-multi-indexes`,
options: {
config: {
host: process.env.MEILISEARCH_HOST,
apiKey: process.env.MEILISEARCH_API_KEY,
},
settings: {
products: {
indexSettings: {
searchableAttributes: [
"title",
"description",
"variant_sku",
],
displayedAttributes: [
"title",
"description",
"variant_sku",
"thumbnail",
"handle",
],
},
primaryKey: "id",
transformer: (container, product) => ({
id: product.id,
// other attributes...
}),
documents: (container, documents) => ({
id: product.id,
// other attributes...
})
},
other_index: {
indexSettings: {
searchableAttributes: [
"title",
"description",
"variant_sku",
],
displayedAttributes: [
"title",
"description",
"variant_sku",
"thumbnail",
"handle",
],
},
primaryKey: "id",
transformer: (container, product) => ({
id: product.id,
// other attributes...
}),
documents: (container, documents) => {
// Here you can use the container or any sources to fetch documents
// and return the list of documents that will be added to the indexes.
// You can also transform the documents here if needed - or use the transformer
// to do so.
}
},
},
},
},
]
Test the Plugin
1. Run the following command in the directory of the Medusa backend to run the backend:
npm run start
2. Try searching products either using your storefront or using the Store APIs.