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

Short Url Bundle Laravel Package

genj/short-url-bundle

genj/short-url-bundle is a Symfony bundle for adding short URL generation and redirection to PHP applications. It helps turn long links into compact, shareable addresses and route visitors to their original destinations with minimal configuration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Redirect infrastructure for short/vanity links — the core capability is mapping an incoming path to a record in the database and issuing a redirect, which underpins campaign short links, QR codes on print/packaging, and stable shareable URLs.
  • Link stability across content changes — because the redirect target is an Entity rather than a hard-coded URL, the destination resolves at request time. This directly informs a product decision about whether short links should point to a frozen path (breaks on slug change) or to a domain object (survives renames, returns 404 on deletion). That choice affects SEO, offline collateral lifetime, and support load.
  • Build vs. buy — the package is ~a routing rule plus a lookup table. It signals that this is a build item, not a procurement item: a short_links table with a polymorphic reference to the target model, a controller, and a 301/302 policy.
  • Roadmap for redirect/campaign tooling — whether to invest in a marketing-owned redirect manager (custom codes, expiration dates, A/B targets, click analytics) is the real roadmap question this package raises but does not answer.
  • Content migration decisions — during URL restructuring, a short-link layer lets you ship redirects as data instead of as nginx/Apache rules, which affects who owns redirects (marketing vs. platform) and how fast they can change.

When to Consider This Package

Do not adopt it as a dependency. It is archived (last release December 2015), has one star, zero dependents, and is a Symfony bundle — not a Laravel package — so it cannot be installed into a Laravel application without a port. It targets PHP 5-era Symfony 2.x and Doctrine ORM, and will not resolve against modern Symfony or Laravel release lines. There are no security patches and no maintainer.

Consider it only in two narrow cases:

  • You are maintaining a legacy Symfony 2.x codebase where it is already installed — in which case the decision is "plan the removal," not "evaluate the adoption."
  • You want a 15-minute read of the source as a design reference for the "short code → entity reference → resolve route at redirect time" pattern, then reimplement it idiomatically (in Laravel: a short_links model with morphTo and a RedirectController).

Look elsewhere — or build — if you need: click analytics, per-link expiration, custom domains, UTM handling, 301 vs. 302 policy, multi-tenant isolation, or anything with a maintenance guarantee. Any of those requirements makes an in-house implementation the cheaper path within a sprint.

How to Pitch It (Stakeholders)

To executives: We evaluated this as a possible foundation for campaign short links and QR codes. Recommendation: do not adopt. The package is archived, unmaintained since 2015, targets a different framework (Symfony, not Laravel), and has no user base — adopting it transfers risk to us with no cost savings, since the capability is small enough to build in-house in roughly a week. The valuable takeaway is a design lesson: links that point to a record rather than a URL don't break when content is renamed, which extends the life of printed material and reduces support tickets.

To engineering: Treat this as a pattern reference, not a library. The one idea worth carrying forward is deferred target resolution — store a reference to the target entity and resolve the destination route at redirect time, so slug changes don't produce dead links and deleted content produces a clean 404. For our stack, that's a short_links table with a polymorphic relation, a catch-all route, and an explicit decision on permanent (301) versus temporary (302) redirects. If we build it, we also own the things this package never shipped: click logging, expiration, and a management UI.

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console