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

Search Bundle Laravel Package

padam87/search-bundle

Lightweight Symfony bundle for adding search to Doctrine-backed applications. Define searchable fields and filters, build queries from request parameters, and return paginated results with minimal configuration.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. padam87/search-bundle is a Symfony2 bundle, not a Laravel package. It is built around Symfony's DependencyInjection container, bundle registration (AppKernel), and Doctrine ORM entity metadata. Its search abstraction is exposed through Symfony services, annotations, and configuration trees — none of which have direct analogues in Laravel's service-provider/container model. In a Laravel codebase this is not "loosely coupled but adaptable"; it is architecturally incompatible at the bootstrapping layer. Any use would require either a Symfony sidecar service or a substantial port that effectively discards the bundle packaging.

Integration feasibility. Low. The package last shipped in April 2014, targeting Symfony 2.x and PHP 5.x-era tooling (pre-PHP 7, pre-Composer v2 norms, pre-PSR-4-autoloading ubiquity). A Laravel 10/11 application runs PHP 8.1+ and expects modern typing, strict deprecation behavior, and PSR-compliant autoloading. There is no maintained bridge. The realistic integration paths are: (a) reimplement the search abstraction natively in Laravel, using this repo as a design reference only; (b) run a Symfony 2.x service in isolation and call it over HTTP — which carries the entire legacy runtime as an operational burden; or (c) reject and select a maintained alternative (laravel-scout, Elasticsearch/Meilisearch clients, TNTSearch). Only (a) and (c) are defensible for a production roadmap.

Technical risk. High and concentrated in three areas. First, abandonment: 7 stars, 0 dependents, and a 2014 last release indicate no community safety net — no security patches, no compatibility fixes, no issue triage. Second, runtime risk: Symfony 2.x is end-of-life and receives no security updates; running it in 2024+ is a compliance and audit finding, not just a technical debt item. Third, knowledge risk: the Symfony 2 bundle conventions (annotation-driven metadata, compiler passes) are unfamiliar to most current Laravel engineers, so onboarding cost is asymmetric — you pay to learn patterns you cannot reuse elsewhere in the stack. The low opportunity score (16.04) and composite score (0.285) from the evaluation dataset corroborate this: the package is a historical artifact, not a candidate.

Key questions.

  • Is the actual requirement "full-text search," "faceted filtering," or "entity indexing"? The answer determines whether a native Laravel solution (Scout + Meilisearch) covers it without any legacy surface.
  • What in this bundle is genuinely non-replicable? If the value is the annotation-driven index definition, that is ~200 lines of Laravel code, not a dependency.
  • Does the organization already operate Symfony services? If yes, the sidecar option becomes viable; if no, it is a non-starter.
  • What is the security/compliance posture on EOL Symfony 2.x? Any answer other than "prohibited" should be escalated.

Integration Approach

Stack fit. Poor for Laravel. The package assumes Symfony's kernel, bundle config merging, Doctrine metadata drivers, and a service-container-centric extension model. Laravel's container, Eloquent, and Artisan command surface have no mechanical mapping. The only honest framing is "port the concept, not the code."

Migration path. Treat the repository as a specification, not a dependency. Extract (1) the search abstraction interface, (2) the indexing lifecycle (index/build/refresh), and (3) any adapter contracts, then reimplement behind a Laravel-native interface (SearchDriver contract, bound in a service provider, driven by Artisan commands and queued jobs). If a Symfony service already exists in the estate that depends on this bundle, the migration is a strangler pattern: stand up the Laravel-native search service alongside, dual-write indexes, shadow-read for a bake period, then cut over. Do not attempt to composer require this into a Laravel app — expect immediate autoload and container failures.

Compatibility. Assume PHP 5.x/7.0-era code and Symfony 2.3–2.7 APIs. If the source is only being read (not executed), compatibility is irrelevant beyond comprehension. If it must run, pin the legacy runtime in its own container with no shared network egress beyond its API, and document the EOL exception explicitly. There is no supported path to PHP 8 or Laravel 10/11 without a fork and rewrite, at which point the package provides no residual value.

Sequencing.

  1. Requirements spike: define search use cases and non-functional targets (latency, index freshness, facet cardinality).
  2. Build-vs-buy decision: benchmark native Laravel options against those targets; this package should be the reference, not the candidate.
  3. If porting concepts: implement the abstraction interface and a single adapter first, then indexing jobs, then query API.
  4. If a legacy Symfony consumer genuinely exists: containerize it, add an API facade, instrument it, and schedule its retirement before any new dependent is added.
  5. Decommission tracking: no new consumers, documented sunset date.

Recommendation. Do not adopt as a dependency. Reuse as design input only, and only if the team has a specific unmet need the maintained ecosystem does not cover — which, for full-text and faceted search in Laravel, is unlikely.

Operational Impact

Maintenance. Effectively unmaintained. With 0 dependents and no release since 2014, there is no upstream to patch, no CVE response, and no version compatibility promise. Any operational burden lands entirely on the adopting team, and that burden grows monotonically as PHP and Symfony evolve around a frozen codebase.

Support. No vendor, no active maintainer engagement, no community. Internal support means one or two engineers who understand an obsolete framework convention — a single-point-of-failure staffing pattern. Knowledge transfer cost is high and the skill is not transferable to the rest of the stack.

Scaling. Unknowable without profiling, and that is the problem: the bundle's index/query adapters reflect 2014 design assumptions (synchronous indexing, modest index sizes, single-node search backends). Modern expectations — incremental reindexing, distributed search, near-real-time freshness — are not addressed by the abstraction. You would be scaling the underlying engine, not this layer, which raises the question of why the layer exists at all.

Failure modes.

  • Silent index drift: 2014-era indexing is typically fire-and-forget; failures may not surface without added instrumentation.
  • Container/boot failure on any modern PHP/Symfony version — hard stop, not degraded mode.
  • Security exposure from an EOL framework runtime, with no patch path.
  • Knowledge vacuum: original authors inactive on this project; incident response depends on reverse-engineering.
  • Dependency rot: transitive legacy packages pinned to unsupported versions, blocking routine platform upgrades across the estate.

Ramp-up. Deceptively expensive. The bundle's own surface is small, but productive use requires Symfony 2 bundle conventions, Doctrine metadata drivers, and the 2014 search-adapter idiom — three skill areas that are declining in the market and irrelevant to the team's Laravel work. Estimate weeks of ramp-up for a small team, versus days to stand up a maintained Laravel search driver. The cost asymmetry is the strongest argument in the assessment: the package's conceptual value can be captured in a short port, while its dependency value is negative.

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.
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core