kgilden/pager-bundle
A lightweight Symfony bundle that adds simple, reusable pagination support. It provides pager services and Twig helpers for splitting large result sets into pages with configurable page sizes and templates. Easy to integrate, though documentation and community support are limited.
extra.laravel, no Blade/Twig overlap with Laravel conventions. The PM decision it supports is not "add pagination" but "confirm whether pagination tooling is a Symfony legacy concern or a Laravel-native one," which determines whether this dependency belongs on the roadmap at all.LengthAwarePaginator, paginate(), and Blade pagination views. The decision this package informs is replace vs. retain: for Laravel-first products, "buy" here means adopting an integration burden for functionality the framework gives away; for Symfony 2.x/3.x estates, "buy" means a low-cost compatibility bump (^2.0.1) that avoids rewriting list/table views ahead of a framework upgrade.Consider it when:
Look elsewhere when:
To executives: This is a tiny maintenance release — it adds Symfony 3.0 compatibility and nothing else: no new features, no breaking changes, no deprecations, no migration work. The business value is narrow but real: on a Symfony estate it keeps a pagination dependency viable through a planned framework upgrade, avoiding a forced rewrite of list and table views. Two caveats matter for the decision. First, the package is a Symfony bundle, not a Laravel package — if our roadmap is Laravel-based, adopting it buys integration friction rather than saved work, and Laravel's built-in paginator already covers the need. Second, the project shows zero stars, zero dependents, and no release since 2015, so we should treat it as unmaintained code we own once adopted. Recommendation: approve as a routine dependency bump only if we are on Symfony; if we are Laravel-first, flag it for replacement rather than adoption.
To engineering: v2.0.1 declares Symfony v3.0 support and installs via Composer ("kgilden/pager-bundle": "^2.0.1"). No API surface changes, so treat it as a low-risk constraint bump — ideally landed in the same change window as the Symfony upgrade so compatibility is proven together, and staying on 2.0.0 is fine if you are not on Symfony 3. On the Laravel side, assume no auto-discovery: no service provider, no vendor:publish, no Blade views. Only the PHP pager object transfers cleanly; the Twig extension and templates must be reimplemented once as a Blade partial, and URLs must forward request()->query() so page links don't silently drop active filters. Clamp out-of-range pages and never run two paginators against the same ?page= parameter. Before committing, validate three things: (1) resolved Composer constraints against our actual PHP/Laravel/Symfony versions — Symfony 3.0 is EOL and likely conflicts with modern Laravel's Symfony components; (2) whether the pager is framework-agnostic enough to hide behind an interface; (3) who owns the fork if we need behavior changes, since upstream activity is effectively nil. Default position for new Laravel work: use LengthAwarePaginator and skip this dependency entirely.
How can I help you explore Laravel packages today?