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

Solr Bundle Laravel Package

floriansemm/solr-bundle

A Symfony bundle that integrates Apache Solr search, offering configurable clients and services for indexing documents, building queries, and managing Solr connections so applications can add fast, scalable full-text search with minimal setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Search roadmap scoping: “do we need real search or is LIKE %term% enough?” This bundle is a concrete reference for what a Solr-backed search tier looks like in a Doctrine-centric PHP app — entity-to-document mapping, index lifecycle, and query abstraction. Useful as a costing input when estimating a search epic, not as the implementation itself.
  • Build vs. buy for the search tier. The package represents the “build/self-host” end of the spectrum (own Solr cluster + own glue code). Benchmarking it against managed options (Algolia, Typesense Cloud, Meilisearch, Elastic Cloud) gives you a defensible TCO comparison: this route trades licensing cost for ops headcount, relevance tuning, and reindex runbooks.
  • Index-sync architecture decision: event-driven vs. batch. Its Doctrine event-listener/annotation approach is the canonical “index on persist/update” pattern. That’s a real architectural fork in the road — synchronous indexing (simpler, adds write latency, risks drift on failure) vs. queued/batch reindex (resilient, more moving parts). This package documents the cheap version of that choice.
  • Legacy portfolio triage. With a last release in November 2018 and zero dependents, this is a signal artifact: if it appears in your dependency graph, you have a Symfony 2/3-era service that is a candidate for replatforming, not incremental patching. That’s a roadmap input for a modernization thesis.
  • Ecosystem fit check (the first decision, and it fails here). Despite being framed as a “Laravel/PHP package,” it is a Symfony bundle tightly coupled to Doctrine2. For a Laravel product this is a non-starter as a dependency; its only legitimate use is as a pattern reference. Adopting it would mean importing Symfony bundle conventions and a stale Doctrine2 assumption into an application that has neither.

When to Consider This Package

Consider it only when all of the following hold:

  • You maintain a Symfony 2.x/3.x application on Doctrine2 and PHP 7.x that already operates a Solr cluster — the bundle is glue, not a search strategy.
  • The use case is internal or low-blast-radius (back-office admin search, internal document lookup), where relevance quality and uptime are not revenue-linked.
  • You need a short-lived bridge (one to two quarters) while a migration to a maintained client (solarium/solarium) or a managed search service is funded.
  • You have in-house Solr operational competence — schema management, commit/optimize tuning, cluster upgrades — because the bundle will not provide it and no one else is maintaining it.

Look elsewhere when:

  • You are on Laravel. There is no Laravel integration here at all; the correct move is a first-party or maintained client plus a queue-based indexing job.
  • You are on Symfony 5/6/7 or PHP 8.1+. The package predates Symfony Flex, the modern autowiring defaults, and PHP 8 typing. Expect a fork, not an install.
  • You need support, SLAs, security patches, or CVE response. A 2018 last release with zero dependents means you are the maintainer the moment you composer require it.
  • Search relevance is a product differentiator. Typo tolerance, synonyms, semantic/vector retrieval, and analytics-driven ranking are all out of scope; managed providers ship these as configuration.
  • You have no Solr cluster and no desire to run one. Standing up Solr to justify this bundle is inverted reasoning — pick the search backend first, then the client.
  • You want entity sync that survives failure. There is no evidence here of retry semantics, dead-letter handling, or drift reconciliation; production indexing needs all three.

How to Pitch It (Stakeholders)

To executives: This is a 2018-era Symfony/Doctrine integration for Solr with a small community (122 stars), no downstream dependents, and no release in roughly seven years. Treat it as due-diligence material and a short-term bridge, not a strategic dependency. Adopting it means acquiring an unmaintained component: we inherit security patching, PHP/Symfony upgrade work, and on-call ownership — costs that never appear on the license line (MIT, so free) but land squarely in engineering capacity. My recommendation is to use it to price and shape a search initiative, then fund either a maintained client with our own indexing layer or a managed search service.

To engineering: Read it for the Doctrine entity-listener and annotation-driven index-mapping pattern — that’s the durable idea. Do not adopt it as a dependency: it assumes Symfony 2/3 bundle conventions and Doctrine2 on PHP 7, so on a current stack you would be forking before you ship. If we proceed with self-hosted Solr, budget for the pieces this bundle doesn’t give us — idempotent reindexing, failure/retry handling, index drift reconciliation, and schema migration — because those are the actual work, and they are the parts that break in production.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager