- Can I install kunstmaan/search-bundle in a Laravel application?
- No. kunstmaan/search-bundle is a Symfony bundle that relies on bundle registration in AppKernel and Symfony's dependency injection container, so Laravel has no native equivalent to its bootstrapping. There is no service provider, config publishing, facade, queue integration, or Artisan commands. Treat it as a design reference or use Laravel Scout with a maintained engine instead.
- What Laravel version does kunstmaan/search-bundle support?
- It does not support any Laravel version. The bundle dates from the Symfony 2.x and PHP 5.x era, with its last release on 2014-04-05. Installing it in a modern Laravel app would require porting the container wiring and service tagging, which is effectively a rewrite of the glue code rather than a normal package install.
- Is kunstmaan/search-bundle still maintained?
- No, it is effectively abandoned. The last release was 2014-04-05, the repository has roughly 18 stars and zero dependents, and there is no release cadence or maintainer signal. Adopting it means accepting an upstream-less dependency with no patched dependency chain.
- Which Elasticsearch version does Kunstmaan SearchBundle work with?
- It targets the Elasticsearch 0.90 to 1.x era, including mapping types and the older query layer. It will not talk to Elasticsearch 7 or 8, or OpenSearch, without changes to both the client and the mapping and query code. Check your production Elasticsearch version and upgrade plans before considering any port.
- What is the Laravel Scout alternative to kunstmaan/search-bundle?
- Use Laravel Scout with a custom engine or the official elasticsearch-php client. Both give you the same core capability of indexing and querying content, with active maintenance and framework integration. The Kunstmaan bundle is better treated as a reference for separating indexing concerns from domain models.
- How do I add full-text search with facets and highlighting in Laravel?
- Build it on a maintained client rather than this bundle. The useful pattern to borrow is one SearchConfigurationInterface implementation per indexable entity, exposing index name, document id, mapping, and a normalize or to-document method. In Laravel, bind a registry as a singleton and tag implementations through a SearchServiceProvider.
- How does kunstmaan/search-bundle index documents?
- Each indexable domain object declares its own SearchConfigurationInterface implementation with document id, type, mapping, and serialization, and registers it as a tagged service discovered by a compiler pass. That keeps indexing concerns separate from the domain model. The provider abstraction is nominal because only Elastica is supported.
- Can I use kunstmaan/search-bundle with PHP 8 and Symfony 5 or 6?
- No. The code assumes PHP 5.x semantics and Symfony 2.x APIs, which conflicts with PHP 8.1+ and Symfony 5 or 6. Expect deprecation failures rather than simple warnings, plus compatibility issues with modern Elasticsearch clients.
- What is the migration path from kunstmaan/search-bundle to Laravel?
- The recommended path is reference-only: extract the contract into a Laravel interface plus a registry singleton and a service provider that reads a search.indexable tag array, then implement it with elasticsearch-php. A fork-and-port is possible but means stripping Symfony bundle plumbing and replacing Elastica calls, with ongoing ownership rather than a one-time port. If the bundle must run unmodified, deploy it as an isolated legacy Symfony sidecar service.
- Is it safe to depend on kunstmaan/search-bundle in production?
- It is high risk. There is no CVE process, no maintainer signal, and shipping it pulls in an unaudited transitive dependency tree including Elastica and its HTTP layer. For production, use a maintained client or Scout engine and keep the bundle as a design reference only.