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

Sphinx Search Laravel Package

scorpio/sphinx-search

A lightweight Laravel package that brings Sphinx full-text search to your Eloquent models. Define and sync indexes, then query them with a fluent SphinxQL builder using familiar syntax, keeping search fast and easy to maintain in any PHP application.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Replatform vs. retain, for an existing Sphinx estate. The single most useful thing this package does is price the "keep Sphinx" option. If a legacy search surface is already backed by sphinxsearch/Sphinx-compatible infrastructure, wrapping SphinxClient in OOP classes is a 1–3 day change, not a quarter. That makes "retain + isolate" a credible counter-proposal to "migrate to Elasticsearch/Meilisearch/Typesense," and it lets you sequence: adapter seam now, relevance/UX work later.
  • Scoping the search feature set from real capability, not vendor decks. The wrapper exposes the SphinxClient surface — full-text matching, attribute filters and range filters, sort modes, result grouping, geodistance anchors, and BuildExcerpts for result snippets. That maps to concrete product decisions: faceted catalog filtering, proximity search, "show matching snippet," per-attribute ranking weights. Decisions it does not support: semantic/vector/hybrid retrieval, near-real-time personalization, typo-tolerant autosuggest at consumer scale. Draw the roadmap boundary there rather than discovering it post-commitment.
  • Build vs. buy, honestly costed. This package buys you client plumbing only — a thin object layer over an extension. It buys zero indexing pipeline, zero schema management, zero relevance tooling, zero observability. When you write the ADR, the buy column should show ~$0 and the build column should show the real 80%: indexer jobs, delta/reindex strategy, ranking tuning, and a parity harness. That framing usually reorders the roadmap toward a managed engine.
  • Defining an internal search seam (strategic). The highest-leverage PM decision is to not let this become load-bearing. Charter it as an implementation detail behind an application-owned SearchRepository / SearchService interface with a Sphinx implementation and a stub implementation. Then the engine choice becomes a config swap, and your migration ticket shrinks from "rewrite search" to "add an adapter."
  • Supplier/risk register entry. Archived status, 0 dependents, and an unclear license (NOASSERTION) mean this cannot be a supported component under any normal policy. It must be recorded as fork-and-own: vendored, patched in Composer, owned by a named engineer, with an exit date. That is a decision, and it should be written down before adoption, not after.

When to Consider This Package

Consider it when:

  • You already operate Sphinx or Manticore in Sphinx-compatibility mode, and the PECL sphinx extension installs and loads on your target PHP runtime. Verify this first — if the extension won't build, this package is moot regardless of its merits.
  • The search surface is internal, admin-facing, or low-to-moderate traffic and simple faceted search is sufficient.
  • You need a thin OOP seam fast — for example, to get legacy search code off procedural SphinxClient calls before a larger refactor — and you have a named owner who will vendor and patch it.
  • You're running a migration bake-off and need a cheap, working baseline implementation to compare candidate engines against on real queries.

Look elsewhere when:

  • The project is greenfield. Use Laravel Scout with Meilisearch, Typesense, or a managed service. This package has no service provider, no config publishing, no Scout driver, and no Laravel integration — you'd build all of it.
  • You're on a modern PHP 8.x stack. Validate the extension toolchain before spending any planning time; the PECL Sphinx client is long unmaintained and is the actual blocking dependency.
  • You need active maintenance, security response, or a CVE process. Archived with a non-standard license means supply-chain and legal review will be a multi-week conversation.
  • You need semantic/vector retrieval, typo tolerance, or multi-tenant managed infrastructure with SLAs.
  • Legal cannot accept an ambiguous license. NOASSERTION is a stop sign until counsel signs off; the practical path is a documented internal fork with the license question resolved up front.

How to Pitch It (Stakeholders)

To executives: This is not a platform bet — treat it as a transition tool. Signals are weak: the package is archived, has no downstream users, and carries an unclear license, so it is not something we can depend on for the long term. Its value is that it makes "keep what we have" a fairly-priced option for one release cycle, so we can spend the saved effort on relevance and UX rather than infrastructure. Recommendation: adopt only behind an internal search interface, with a named owner, a vendor-and-patch plan, and a dated exit review. The real decision on the table is which search engine we standardize on over the next 12–18 months; this package keeps that decision open at near-zero cost rather than making it for us.

To engineering: It's a small object wrapper over the SphinxClient extension — no Laravel bindings, no config, no tests you can lean on. Plan to bind it as a singleton, wrap it in a project-owned interface, and keep it out of domain code. Pin and vendor the package, confirm the PECL extension compiles on our PHP version before we estimate, and build a query-parity harness against the incumbent so the eventual engine swap is measurable. Treat the wrapper as replaceable from day one; assume we own the code we adopt.

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.
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus