lindemannrock / craft-search-manager
Advanced multi-backend search management for Craft CMS - supports Algolia, File, Meilisearch, MySQL, Redis, and Typesense
Package info
github.com/LindemannRock/craft-search-manager
Type:craft-plugin
pkg:composer/lindemannrock/craft-search-manager
Requires
- php: ^8.2
- algolia/algoliasearch-client-php: ^4.0
- craftcms/cms: ^5.0.0
- lindemannrock/craft-logging-library: ^5.0
- lindemannrock/craft-plugin-base: ^5.0
- meilisearch/meilisearch-php: ^1.0
- typesense/typesense-php: ^4.0
Requires (Dev)
- craftcms/ecs: dev-main
- craftcms/phpstan: dev-main
- lindemannrock/craft-docs-manager: ^5.0
- phpunit/phpunit: ^11.0
- yiisoft/yii2-redis: ^2.0
This package is auto-updated.
Last update: 2026-06-18 11:23:04 UTC
README
Search Manager for Craft CMS
Advanced multi-backend search management for Craft CMS with BM25 ranking, analytics, caching, query rules, promotions, and a frontend search widget.
License
This is a commercial plugin licensed under the Craft License. It will be available on the Craft Plugin Store soon. See LICENSE.md for details.
⚠️ Pre-Release
This plugin is in active development and not yet available on the Craft Plugin Store. Features and APIs may change before the initial public release.
Features
- 7 Search Backends — MySQL, PostgreSQL, Redis, File (built-in), plus Algolia, Meilisearch, Typesense
- BM25 Ranking — Industry-standard relevance scoring with configurable parameters
- Search Operators — Phrase search, NOT, wildcards, field-specific, per-term boosting, boolean operators
- Fuzzy Matching — Typo tolerance with n-gram similarity
- Multi-Language — Stop words and localized boolean operators in 12 languages (EN, PT, IT, ES, FR, NO, NL, SV, DE, DA, JA, AR)
- Highlighting & Snippets — Highlight matched terms and show contextual excerpts
- Autocomplete — Search-as-you-type suggestions with separate caching
- Query Rules — Synonyms, section/category/element boosting, filtering, redirects
- Promotions — Pin elements to fixed positions in search results
- Analytics — Track queries, devices, geo-location, performance, content gaps
- Caching — Multi-layer caching with cache warming after rebuilds
- Frontend Widget — CMD+K search modal (WCAG 2.1 AA, keyboard navigation, theming)
- Native Search Replacement — Optionally replace Craft's built-in search
- REST API — Search and autocomplete endpoints for headless/mobile apps
- Pending Syncs CP — Operator surface for the L3 sync buffer: triage failures, retry, purge, and watch the queue drain live from the Control Panel
- API Keys — Generate scoped keys (per-index, per-referrer, expiry, hit caps, rate limits) for the public search, autocomplete, and analytics tracking endpoints. Plaintext shown once; only the HMAC-SHA256 hash is stored. Enable Require API Key to enforce keys via the
X-Search-Manager-Keyheader; per-key rate limiting returns429when a key exceeds its search/autocomplete requests-per-minute cap - Privacy-First — IP hashing, subnet masking, async geo-lookup, GDPR-friendly
Requirements
- Craft CMS 5.0+
- PHP 8.2+
- Logging Library 5.0+ — optional, install in CP for logs
Installation
Via Composer
composer require lindemannrock/craft-search-manager
php craft plugin/install search-manager
php craft search-manager/security/generate-salt
Using DDEV
ddev composer require lindemannrock/craft-search-manager
ddev craft plugin/install search-manager
ddev craft search-manager/security/generate-salt
Documentation
Full documentation is available in the docs folder.
Support
- Issues: GitHub Issues
- Email: support@lindemannrock.com
License
This plugin is licensed under the Craft License. See LICENSE.md for details.
Developed by LindemannRock
