aternovtsii/search-bundle
Laravel search bundle that adds a reusable, configurable search layer for your app. Provides easy integration for searching across multiple models/resources with a simple API, sensible defaults, and room to extend matching, filtering, and result formatting.
The Symfony bundle is designed for Symfony/Doctrine ecosystems, but its core functionality (Elastic/Opensearch integration) aligns well with Laravel’s search/analytics needs. Key considerations:
doctrine/dbal for database abstraction) or manual mapping.postPersist) must be translated to Laravel’s model observers or service provider hooks.symfony/dependency-injection with Laravel’s container.fruitcake/laravel-doctrine).Event::dispatch().| Risk Area | Severity | Mitigation Strategy |
|---|---|---|
| Symfony Dependency Conflicts | High | Use composer require with strict version pinning or isolate in a micro-service. |
| Doctrine ↔ Eloquent Incompatibility | High | Build adapters or migrate to Doctrine. |
| Event System Mismatch | Medium | Replace Symfony listeners with Laravel observers. |
| Undocumented Laravel Gaps | Medium | Test edge cases (e.g., CLI commands, caching). |
| Maintenance Overhead | High | Fork the package or contribute Laravel-specific PRs. |
HttpClient with Laravel’s Http facade or Guzzle.Mercure or ApiPlatform) or message queue (Symfony Messenger → Laravel Horizon).| Component | Laravel Compatibility | Workaround Needed? |
|---|---|---|
| Symfony DI | ❌ No | Replace with Laravel container |
| Doctrine ORM | ❌ No | Use Eloquent or Doctrine bridge |
| EventDispatcher | ❌ No | Replace with Laravel events |
| Symfony HttpClient | ⚠️ Partial | Use Laravel’s Http facade |
| OpenSearch Client | ✅ Yes | Extract and reuse |
SYMFONY_DEPRECATIONS_HELPER=strict).| Scenario | Impact | Mitigation |
|---|---|---|
| Symfony Dependency Conflict | App crashes on install | Use composer why-not to diagnose; isolate in a microservice. |
| Doctrine ↔ Eloquent Mismatch | Search queries return empty | Build a data mapper layer. |
| **Event System Failure |
How can I help you explore Laravel packages today?