1 Repo
Dividing datasets into pages based on a starting record index and a fixed page limit.
Distinct from Index-to-Offset Calculations: Candidates focus on UI scroll offsets or string slicing, not database collection pagination.
Explore 1 awesome GitHub repository matching data & databases · Offset Pagination. Refine with filters or upvote what's useful.
Pagy ist eine framework-unabhängige Ruby-Bibliothek für Paginierung, die verwendet wird, um große Datensätze in nummerierte Seiten aufzuteilen. Sie bietet mehrere Implementierungen für die Datenaufteilung, einschließlich offset-basiertem Slicing für Standard-Collections und hochperformanter Keyset-Paginierung für massive Datensätze. Die Bibliothek enthält einen Paginierungs-UI-Generator für das Rendern barrierefreier HTML-Navigationsleisten sowie ein dediziertes Tool für REST-API-Paginierung, das RFC-konforme Link-Header und JSON-Metadaten erzeugt. Sie bietet zudem spezialisierte Systeme für die Aufteilung von Ergebnissen aus Suchmaschinen wie Elasticsearch, Meilisearch und Typesense sowie zeitbasierte Paginierung zur Organisation von Datensätzen in Kalendereinheiten. Umfassende Funktionen decken das Datenmanagement für Arrays und Datenbank-Collections ab, einschließlich Memoization der Datensatzanzahl und Rebalancing der Seitengröße. Das Projekt bietet zudem umfassende UI- und Barrierefreiheits-Tools wie ARIA-Labeling, Unterstützung für rechts-nach-links-Layouts und Integration mit verschiedenen CSS-Frameworks. Sicherheit wird durch die Sanitisierung von Paginierungsparametern und Fehlerbehandlung für Anfragen außerhalb des Bereichs adressiert. Das System ist über eine zentrale Konfiguration für globale Standardwerte erweiterbar und erlaubt das Überschreiben der Kernlogik durch Modul-Prepending.
Divides collections into discrete pages by calculating the starting record index and a fixed limit.