Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Filament Meilisearch Laravel Package

lancodev/filament-meilisearch

Filament plugin that connects your admin panels to Meilisearch, adding fast, typo-tolerant full-text search to resources and tables with minimal setup.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

What this release is. lancodev/filament-meilisearch is a Filament panel plugin that replaces Filament's default global search with a Meilisearch-backed search experience (including a command-palette/banner UI). v2.0.1 is a patch containing documentation and styling changes only: the README now states Filament v4/v5 only, and the banner image gains the filament-hidden class. There is no functional API change in this release, so v2.0.0 remains the behavioral baseline and v2.0.1 is the version to pin.

Architecture fit. The fit is strong if the organization already runs Meilisearch as its Laravel Scout driver for the customer-facing application — admin search then shares the same index infrastructure, relevance tuning, and operational runbooks. The fit is weaker if Meilisearch would be introduced solely for admin search, because it adds a stateful service into the admin plane where Filament's built-in database search is otherwise dependency-free. Architecturally the plugin sits in front of Filament's global search abstraction, which is the most version-volatile part of Filament's surface area.

Integration feasibility. Standard Laravel package shape: Composer install, auto-discovered service provider, plugin registration on the panel, published config. No bespoke infrastructure. The main integration work is not the package itself but (a) the Meilisearch service, (b) index population/refresh, and (c) verifying that search results respect panel tenancy and authorization.

Technical risk.

  • Version coupling. Filament's global search and UI internals changed materially across v3 → v4 → v5. The README dropping v3 support is a signal that the maintainer is tracking upstream rather than maintaining a compatibility matrix. The filament-hidden change is cosmetic but confirms UI coupling that can regress on Filament minors.
  • Maintainer concentration. Single-author, narrow-scope package with no stated SLA. The docs-only patch cadence suggests a small operation.
  • Authorization surface. Admin search is a privileged data path. Any gap in tenant scoping or policy filtering is a data-exposure risk, not a UX bug.
  • Shallow evidence for v5. Filament v5 is recent; a README claim of support is not the same as a tested CI matrix.

Key questions for the maintainer / spike.

  1. Is Laravel Scout a hard prerequisite, or does the package ship its own indexer? Who owns index freshness?
  2. How are results scoped for multi-tenant panels and per-user authorization — filter at query time, or post-filter?
  3. What is the tested support matrix (PHP, Laravel, Filament 4.x vs 5.x, Meilisearch 1.x), and is there CI?
  4. What is the degradation behavior when Meilisearch is unreachable — silent fallback to database search, empty results, or exception?
  5. What was the breaking change between v1.x and v2.0.0, and is there a documented upgrade guide?

Integration Approach

Stack fit. Assumes Laravel 11/12, PHP 8.2+, Filament v4 or v5, and a reachable Meilisearch v1.x instance. Installation is Composer + plugin registration + config publish; configuration is host/key/index plus whatever model/index mapping the package expects.

Migration path. Two distinct migrations, and they should not be conflated:

  1. Filament v3 → v4/v5. This is the large, organization-wide migration and is a prerequisite, not a consequence, of adopting this package at v2. Teams staying on Filament v3 must pin the package's v1.x line and will not receive v2 fixes.
  2. Default global search → this plugin. This is additive and reversible: it can be enabled per panel, so it can ship on one low-risk panel while others keep the built-in search.

Compatibility. Pin exact versions (composer require lancodev/filament-meilisearch:2.0.1) and pin Filament minors in lockstep. Treat any Filament minor bump as requiring a search smoke test, since the plugin's UI layer is demonstrably sensitive to Filament CSS class changes — that is precisely what v2.0.1 fixes.

Sequencing.

  1. Confirm Filament is on v4/v5 across all target panels; confirm Meilisearch exists or budget for it.
  2. Provision a staging Meilisearch instance; run the plugin against a copy of production indexes.
  3. Spike on a single non-critical panel: search relevance, latency, tenant/permission scoping, empty-state behavior.
  4. Validate index refresh strategy and failure behavior with Meilisearch deliberately stopped.
  5. Roll out panel by panel; keep the default search enabled as a fallback until one full release cycle has passed.

Operational Impact

Maintenance. Code footprint is small and expected to be low-churn, but maintenance dependency is on a single maintainer's cadence and willingness to track Filament releases. Budget for the realistic scenario of pinning to a known-good version for months, or vendoring/forking the plugin if Filament moves and the package lags. The v2.0.1 patch is documentation-only, so it carries no runtime maintenance cost but also delivers no fixes.

Support. Community support via GitHub issues; no vendor, no SLA, no commercial backing evident. Escalation path for a production search outage in the admin panel is effectively "read the source" — acceptable for an internal admin tool, not acceptable if admin search is on a critical operational path (e.g., support agents locating customer records).

Scaling. Meilisearch itself scales cheaply for admin-scale query volume; the concern is indexing throughput and index size as models grow, and whether indexing is synchronous on save (adding write latency to admin actions) or queued. Recommend queued indexing and a separate index or filterable attribute for admin-visible records if the admin index differs from the public one.

Failure modes.

  • Meilisearch unavailable → degraded or broken global search in the admin UI. Must be confirmed as graceful, not a 500.
  • Index drift / stale documents → users trust a search that silently omits recently created records.
  • Authorization misconfiguration → cross-tenant or cross-role result leakage. Highest-severity failure mode; test explicitly.
  • Filament upgrade → visual and behavioral regression in the banner/search UI (the class of issue v2.0.1 addresses).
  • Abandonment → forced fork at the next Filament major.

Ramp-up. Low for a developer already comfortable with Filament plugins and Laravel Scout: roughly one to two days to install, wire indexes, and validate scoping in staging. Add a half-day for operations to stand up and monitor Meilisearch if it is not already in the estate. Non-trivial only for teams still on Filament v3, where the prerequisite upgrade dominates the effort.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource