elastic/enterprise-search
A Laravel package that integrates Elastic Enterprise Search, offering a clean client, Eloquent-style model syncing, and fluent query building for indexing and searching documents. Configure engines, run queries, and keep your data in sync with minimal setup.
Architecture fit
appSearch(), workplaceSearch(), and entSearch() endpoint groups on top of a shared transport.elastic/elasticsearch and elastic/transport. That is architecturally convenient (one retry/auth/connection story, PSR-18 pluggable HTTP) but it also means the package is a thin veneer: roughly 90% of the capability is reachable with elasticsearch-php plus a base URI, which is exactly why the standalone client has minimal adoption.Integration feasibility
config/services.php and env, and a thin SearchService interface in front of it. A competent Laravel engineer reaches a working vertical slice in one to three days.elasticsearch/elasticsearch and elastic/transport. If the application already uses elasticsearch-php for other indices, expect a resolution conflict or a forced upgrade. Verify in a branch before committing.Technical risk
elasticsearch-php + Search Applications / vector search.Key questions
elasticsearch-php anywhere? What is the resolution outcome?Stack fit
Elastic\EnterpriseSearch\Client as a singleton in a dedicated SearchServiceProvider; expose it only through our own SearchEngine contract so no controller or model ever touches a vendor object.config/services.php, secrets in the environment/secret manager, never in the repo. App Search uses API-key/token auth — treat keys as per-environment and rotate them.Migration path
SearchEngine (index, delete, search, suggest) before installing anything.Compatibility
composer why-not elastic/enterprise-search in a scratch branch early.Sequencing
SearchEngine contract, one adapter, health check command.Maintenance
Support
SearchEngine interface with a fake.Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?