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

Pager Bundle Laravel Package

smilingplants/pager-bundle

smilingplants/pager-bundle provides lightweight pagination for PHP applications, helping split large result sets into manageable pages for lists, search results, and admin screens. It offers a simple pager API with configurable page sizes and minimal setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Roadmap: pagination UX is a "borrow the design, not the code" decision. The only durable asset here is the pager's presentation logic — page-window sizing, first/last/ellipsis behavior, empty-state and single-page handling. That is worth ~30 minutes of reading to inform how your Laravel pagination should look and feel. It is not worth a dependency.
  • Build vs buy: buy nothing, build nothing new. Laravel already ships a mature paginator (LengthAwarePaginator, cursorPaginate, ->links(), publishable Blade views covering Tailwind/Bootstrap). The correct product decision is to use the framework primitive and, if a distinct pager style is required, ship a small internal Blade component. Adopting this package would mean buying a rewrite.
  • Feature fit: does not support any new Laravel feature. Despite the "Laravel/PHP" framing in its description, the artifact is a Symfony 2 bundle with Twig templates. It has no service provider, no Blade views, no Illuminate\Pagination integration. It cannot inform decisions about API pagination, cursor/keyset paging, or filter-preserving page links in a Laravel product.
  • Legacy portfolio decision: useful as a signal, not a tool. It flags that somewhere there may be a Symfony 2/Twig estate that should be scheduled for modernization. The PM action is to add that migration to the roadmap, not to standardize on this bundle.
  • Use cases it genuinely covers: legacy Symfony 2 admin screens and Twig-rendered list views that already depend on it. Nothing customer-facing, nothing new, nothing Laravel.

When to Consider This Package

Consider it only when all of the following hold:

  • You are maintaining an existing Symfony 2.x application — not a Laravel application — and cannot yet migrate off it.
  • The app already uses Twig and needs a simple pager with Twig-rendered navigation.
  • The scope is low-risk internal/admin list screens, not revenue-critical or customer-facing flows.
  • You can vendor or fork the code, pin an exact commit, review it for security, and confirm PHP/Symfony compatibility in a spike before committing.
  • There is a funded plan to leave Symfony 2, and this is a stopgap — not a platform bet.

Look elsewhere when:

  • You are on Laravel — use the native paginator; a composer require will fail at the resolver against PHP 8 and Symfony 5+, and forcing it past that (--ignore-platform-reqs) drags an EOL dependency tree and Twig 1.x security advisories into runtime.
  • You need modern Symfony pagination — evaluate Pagerfanta or KnpPaginator instead.
  • You require active maintenance, security support, adoption evidence, or compatibility guarantees. With 1 star, 0 dependents, and a single likely-absent maintainer, none of those exist.
  • Scale is the driver — pagination scaling is a data-layer problem (OFFSET degradation); the answer is keyset/cursor pagination, which this bundle does not provide and Laravel's cursorPaginate() partially does.

How to Pitch It (Stakeholders)

Executive summary: Do not adopt. This is a Symfony 2-era, Twig-only pager bundle with one star, zero dependents, and no upstream maintenance — and it is not a Laravel package, despite how it is described. There is no integration to perform, only a rewrite, so the engineering cost of "adopting" it exceeds the cost of simply building the pager view we want on top of Laravel's existing paginator. Recommendation: take no dependency; spend a few hours replicating the pager's visual design in a Blade partial and record the security/EOL rationale so this doesn't get re-proposed the next time pagination UI comes up.

For engineering: Symfonony bundles are bootstrapped through AppKernel and the DI container; Laravel has service providers and a facade lifecycle — there is no shim. Expect a hard Composer conflict on PHP 8 / Symfony 5+, and do not resolve it with --ignore-platform-reqs, because that defers an end-of-life dependency tree (including Twig 1.x template-injection advisories) into production. Instead: (1) 2-hour spike to read the templates and capture the interaction spec, then stop; (2) rebuild the markup as a Blade view over LengthAwarePaginator using ->onEachSide(), ->withQueryString(), and ->fragment(); (3) add tests pinning page counts, empty results, and query-string preservation — that last one is the easy bug to ship, since dropping withQueryString() silently loses filters on page two. If a custom pager abstraction is genuinely warranted later, own it as an internal app/Support/Pagination class plus a Blade component, inside our own test and upgrade surface.

Risk register entries: resolver failure on modern PHP (high likelihood, low cost — fails fast); EOL transitive advisory reachable only if forced (low likelihood if disciplined, high cost); escaping divergence between Twig autoescape and Blade {{ }} during any naive port; query-string loss on filter links; and orphaned vendored code drifting from framework conventions at the next Laravel major upgrade.

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.
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
noith/settings
kda/laravel-package