culturegr/presenter
Culturegr Presenter is a lightweight Laravel package for the presenter pattern. Wrap Eloquent models or plain data objects in presenter classes to keep formatting, computed values, and view logic out of models and controllers, with a clean, testable API.
withQueryString()) and was corrected by the maintainer rather than by you. That maintenance is the thing you are paying for.withQueryString() addition means assertions now exercise query-string preservation on paginated links. This closes a specific, high-annoyance failure mode: green test suites shipping paginated URLs that silently drop ?page=2&filter=.... It upgrades the package from "counts and totals" to "links that actually round-trip."links / meta), regression tests around page / per_page / filter combinations, consumer-driven contract tests for mobile or partner clients that reconstruct URLs, and shared assertion vocabulary across multiple Laravel apps.Consider it when:
Look elsewhere, or skip, when:
For executives: This is low-cost test infrastructure, not a product dependency. The v1.7.0 release is housekeeping — it keeps our pagination tests trustworthy as we move to Laravel 13. There is no budget decision and no customer-facing change; the only ask is that it appears on the framework-upgrade checklist so we don't discover the gap mid-migration.
For engineering: v1.7.0 adds Laravel 13 support and brings the paginator stub into line with the Laravel 13 contract by implementing withQueryString(). No public API break, no deprecations, no migration work beyond the framework upgrade itself. Two concrete actions: (1) confirm Composer peer-constraint resolution against Laravel 13 on a branch and run the suite; (2) add one smoke test against a real paginated response so the stub is validated against the framework, not just against itself. Worth flagging that the stub previously lagged a framework contract method — that class of drift is the package's main ongoing risk and the reason the smoke test is non-optional.
How can I help you explore Laravel packages today?