// the find
mislav/will_paginate
Pagination library for Rails and other Ruby applications
will_paginate is the classic Rails pagination gem — paginate a query, drop the helper in your view, done. It also works with Sinatra, Sequel, and Hanami. It's self-described as being in maintenance mode, so it will not be getting new features.
The API is minimal and hasn't changed in years, which means Stack Overflow answers from 2012 still apply. Multi-ORM support (ActiveRecord, Sequel, Mongoid) with separate adapters is clean — you only load what you use. The view helper is renderer-swappable, so replacing the default HTML with custom markup doesn't require monkey-patching. Test matrix covers Rails 5 through 7 and non-Rails setups via separate Gemfiles, which is more thorough than most libraries this old bother with.
Maintenance mode is the elephant in the room — the author has explicitly said no new features will be added, so if you hit an edge case you're patching it yourself or switching gems. No cursor-based pagination, so it degrades badly on large tables as OFFSET climbs into the tens of thousands. The documentation lives in a GitHub wiki rather than the gem itself, which rots faster and is harder to search. kaminari and pagy have both lapped it in flexibility and performance; adopting will_paginate in 2025 means choosing a known ceiling.