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

Router Bundle Laravel Package

ongr/router-bundle

Symfony bundle that adds Elasticsearch-backed routing: store route definitions as documents, match incoming URLs through a custom router, and generate paths from indexed content. Useful for dynamic CMS pages and large route sets managed outside static Symfony routing.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Feature fit: ES-backed routing for content. The bundle plugs ONGR's routing layer into Symfony, letting route/slug data live alongside content documents in Elasticsearch rather than in a relational table. That supports SEO-friendly URL generation, localized slug resolution, and content-driven redirects without an extra DB round trip on every request.
  • Roadmap relevance: narrow and conditional. This only earns a roadmap slot if we are on (or evaluating) the ONGR stack — Symfony plus ONGR Elasticsearch bundles — for a content-heavy, multi-locale site. Outside that context it supports nothing on our roadmap.
  • Build vs. buy vs. fork. The realistic options are (a) build our own thin route provider, (b) vendor/fork this bundle under MIT, or (c) adopt a maintained alternative. Adopting-as-is is not a viable option given a 2017 last release, 6 stars, and 0 dependents. The decision this package actually informs is "is the ES-as-route-store pattern worth copying?" — and the answer is often yes, while "should we depend on this repo?" is no.
  • Use cases it de-risks or illustrates: multi-locale slug generation with fallbacks, content URL changes without 404s (redirect/route history), routing for documents that have no relational primary key, and decoupling route storage from RDBMS migrations.
  • Use it as a design reference, not a dependency. The opportunity value here is architectural (a concrete, small implementation of Elasticsearch-backed route resolution), not operational.

When to Consider This Package

Consider it when all of the following hold:

  • The platform is Symfony, not Laravel. Note the brief mismatch: this is a Symfony bundle and will not drop into a Laravel application; Laravel would need native routing plus route model binding or a slug package instead.
  • We are already committed to ONGR's Elasticsearch bundles and the ongr/router contract, so the bundle's wiring and service definitions save real integration work.
  • We are prepared to fork and own it: pin PHP/Symfony versions, audit transitive dependencies, and accept that no upstream fixes are coming.
  • Route data genuinely belongs in Elasticsearch — i.e., routes are derived from content documents and must stay in sync with them at index time.

Look elsewhere when any of the following is true:

  • The stack is Laravel, or any framework other than Symfony.
  • We are on modern Symfony (5.4+/6.x/7.x) or PHP 8.2+ — a 2017-era bundle almost certainly constrains Symfony 2.8/3.x and PHP 5.6/7.0 and will not install cleanly.
  • We need vendor support, security patching, or an SLA. Zero dependents and single-digit stars means no community safety net and no external bug reports to learn from.
  • A maintained alternative covers the need: Symfony's native route loaders and a custom RouteProvider, the Symfony CMF Routing component for dynamic routes, or simply a slug column plus route-model binding if Elasticsearch is not already in the stack.
  • The requirement is only "friendly URLs." Standard framework routing with a slug package covers it at a fraction of the operational risk.

How to Pitch It (Stakeholders)

For executives (one paragraph): This is a small, MIT-licensed Symfony component for storing and resolving site URLs inside Elasticsearch, which is useful for content-heavy, multi-language sites where URLs must track content and change without breaking links. It is not a commercial dependency: the last release was in 2017, it has effectively no user base, and it will not run on a current PHP/Symfony stack without work. Recommendation: do not add it to the dependency inventory. Treat it as a free reference design — the pattern is worth adopting, the code is not. Cost of the decision is near zero today; the cost of relying on it would be an unmaintained fork we alone must patch.

For engineering (the ask): Read the bundle for its route-provider pattern, then implement a ~200-line equivalent against our Symfony version and Elasticsearch client rather than installing it. If we do vendor it, treat it as a fork: pin PHP and Symfony constraints, replace abandoned transitive dependencies, add integration tests around route generation and index-time route sync, and document the fork owner. Budget roughly one to three days for the reimplementation versus an open-ended compatibility fight with a nine-year-old package.

Signals that back the recommendation: Score 4.2/10, 6 stars, 0 dependents, no release since May 2017 — this is a low-maturity, low-adoption artifact, and the opportunity it represents is a pattern to copy, not a library to ship.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource