hammerstone/fast-paginate
Laravel pagination macro for large tables: swap paginate() for fastPaginate() and it fetches just the IDs for the current page via a subquery, then joins them back—avoiding slow deep offsets. Drop-in replacement for Eloquent builders, no config or view changes needed.
Architecture fit
paginate() on supported queries: fastPaginate() returns the same LengthAwarePaginator shape, so Blade links and API resources generally remain unchanged.Integration feasibility
Technical risk
groupBy, distinct, unions, complex selects, or non-standard/composite primary keys—can fail or behave differently from native pagination.count(*) query for total records is still required for length-aware pagination; fast-paginate improves row retrieval, not total-count cost.Key questions
groupBy, distinct, unions, complex selectRaw, or composite keys?Stack fit
Migration path
paginate() and fastPaginate().paginate() for unsupported query shapes.Compatibility
Sequencing
Maintenance
Support
Scaling
O(offset) cost and does not fix total-count queries. For very deep pages or infinite scroll, pair with keyset/cursor pagination and cached totals.Failure modes
Ramp-up
How can I help you explore Laravel packages today?