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

Pagerfanta Bundle Laravel Package

nitra/pagerfanta-bundle

Symfony bundle integrating Pagerfanta pagination, offering flexible pagers, adapters, and Twig helpers for paginated lists. Easily paginate Doctrine queries, arrays, and custom data sources with configurable templates and straightforward Symfony integration.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. nitra/pagerfanta-bundle is not a Laravel package — it is a Symfony 2 bundle that wires the Pagerfanta pagination library into the Symfony 2 DI container, Twig templating, and bundle registration system. It has no service provider, no facade, no Laravel config publishing, and no Composer autoload conventions aligned with Laravel's package discovery. Dropping it into a Laravel application would not work without bypassing the bundle entirely and consuming pagerfanta/pagerfanta directly. The bundle layer is the only thing this package adds, and that layer is Symfony-specific. Architecture fit for a Laravel stack is effectively zero.

Integration feasibility. Low. The realistic integration is: skip this package, install pagerfanta/pagerfanta (which ships an Illuminate/Doctrine adapter set), and write a small pagination presenter for Blade. That is a one-to-two-day task for a mid-level engineer and yields a maintained dependency. Installing this bundle onto a Laravel app would require kernel bootstrapping, Symfony bundle registration, and Twig — none of which exist in Laravel — making the effort high and the outcome brittle.

Technical risk. High. Indicators: 0 stars, 0 dependents, hosted on Bitbucket, and it targets Symfony 2, which reached end-of-life in November 2019. That implies PHP 5.x/7.0-era constraints, unpatched transitive dependencies, and no security response. A single-maintainer abandoned bundle in a supply-chain-sensitive environment is a compliance and audit finding, not just a technical inconvenience. Even if the pagination logic itself is trivial, the dependency graph it pulls in is the risk.

Key questions.

  • Is there an existing Symfony 2 codebase this is meant to serve, or is this being evaluated for a Laravel application? The answer changes the recommendation entirely.
  • What is the actual requirement — paginated UI, large dataset pagination, or API pagination? Laravel's built-in paginator covers the first two without any third-party dependency.
  • Can we substitute pagerfanta/pagerfanta core plus a Laravel adapter and drop the bundle?
  • Is there a security/policy constraint requiring maintained dependencies (SCA scanning, supported-version policy)?
  • Who owns the fork if we must retain it, and what is the patch SLA?

Integration Approach

Stack fit. Poor for Laravel, acceptable only for a legacy Symfony 2 application. Pagination is a commodity capability; the right primitive for Laravel is Illuminate\Pagination (LengthAwarePaginator, CursorPaginator) with Blade or API resource rendering. Pagerfanta core is a viable alternative if the team specifically needs its adapter ecosystem or its view layer, but the bundle wrapper should not be carried.

Migration path.

  1. If target is Laravel: do not install this bundle. Evaluate pagerfanta/pagerfanta core against native Laravel pagination on three criteria — adapter coverage (Eloquent/query builder), view rendering effort, and cursor support for large offsets. Expect native to win on effort and support.
  2. If target is a legacy Symfony 2 app already using it: keep in place, pin the exact version, and isolate behind an internal interface so the eventual swap to a maintained alternative is a localized change.
  3. If migrating Symfony 2 → Laravel: treat pagination as a rewrite, not a port. Map existing pager parameters (page, maxPerPage) to Laravel's page/per_page and reimplement views in Blade. Effort is hours, not days, per endpoint.

Compatibility. Assume PHP 5.6–7.x and Symfony 2.3–2.8 constraints. Verify against the target runtime before any consideration — most modern Laravel stacks are PHP 8.2+ and the constraint resolution will fail outright. Also check whether the bundle's Twig dependency conflicts with any remaining Twig usage in mixed stacks.

Sequencing. (1) Confirm the actual requirement and target framework. (2) Spike native Laravel pagination on one representative endpoint. (3) If Pagerfanta semantics are required, integrate core library only. (4) Only if a Symfony 2 app is in scope, vendor-pin the bundle and document it as technical debt with a named remediation owner. Do not sequence this package ahead of the framework decision.

Operational Impact

Maintenance. Effectively unmaintained. Zero stars and zero dependents mean no ecosystem pressure, no issue triage, no CVE response, and no upstream fixes for PHP or framework version drift. Any bug fix becomes an internal fork. Budget for that ownership explicitly, or avoid the dependency.

Support. No community, no vendor, no documentation beyond the repo. Onboarding cost is real: an engineer must read bundle source to understand configuration and Twig helper behavior. Internal documentation will be the only reliable reference.

Scaling. Pagination itself is cheap, but Pagerfanta's default adapters issue a COUNT(*) for every page request, which degrades on large tables. At scale this needs cursor-based pagination or an approximate-count strategy — another reason to prefer Laravel's CursorPaginator for high-volume endpoints. The bundle adds nothing to solve this.

Failure modes.

  • Dependency resolution failure on modern PHP (most likely outcome of attempting install).
  • Security scan flags on abandoned or EOL transitive packages.
  • Silent pagination breakage when upstream adapters drift from the pinned core version.
  • Bus-factor of one: no maintainer to escalate to.
  • Twig/Blade rendering assumptions leaking into templates if someone attempts a hybrid integration.

Ramp-up. Low for the library concept (pagination is well understood), high for the operational burden of owning an abandoned dependency. Estimate: half a day for an engineer to evaluate and reject this package in favor of native Laravel pagination; one to two days to implement native pagination across a typical CRUD surface; ongoing cost if retained is unbounded (security patching, fork maintenance, upgrade blocking).

Recommendation. Do not adopt. Treat it as a legacy artifact relevant only to an existing Symfony 2 application, and even there plan a replacement. For Laravel, use the framework's native paginator; if Pagerfanta semantics are genuinely required, use pagerfanta/pagerfanta core with an Illuminate adapter and own the thin view layer internally.

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