{"categories":[{"label":"Dynamic Content","url":"https://skillfed.io/packages/category/internet-www-http-dynamic-content/3"}],"enrichment":{"capability":"Implements cursor-based pagination for Django querysets, allowing navigation through large result sets using cursor tokens instead of page offsets.","skillfed_tags":["django","pagination","graphql-relay"],"use_cases":["Building infinite-scroll feeds or timelines where new content is constantly added","Implementing Relay-style pagination for API endpoints","Paginating large datasets efficiently without expensive offset calculations","Creating mobile-friendly APIs that fetch data incrementally as users scroll","Ensuring consistent pagination results when database records are inserted between requests"],"what_it_does":"django-cursor-pagination provides a cursor-based pagination system for Django querysets as an alternative to traditional offset-based pagination. Instead of requesting page numbers, you navigate by passing cursor tokens that represent positions in the result set, asking for records after or before a given cursor. This approach prevents data shifts when new records are inserted and avoids expensive large-offset database queries.\n\nThe package requires that ordering fields be unique across all records\u2014typically achieved by ordering on a timestamp and an ID. It supports both synchronous and asynchronous pagination, and handles forward and reverse navigation. The trade-off is that you cannot easily determine the total number of pages or jump to arbitrary positions in the dataset, making it best suited for infinite-scroll or feed-style interfaces rather than traditional paginated navigation.","worth_installing":"Yes, if you need cursor-based pagination for Django. The package is production-stable, actively maintained, has no security vulnerabilities, zero dependencies, and solves a real problem for feed-style interfaces. Install it if you're building an API with infinite scroll or Relay-style pagination; skip it if you need traditional page-number navigation or total-count information."},"id":"django-cursor-pagination","links":{"html":"https://skillfed.io/packages/django-cursor-pagination","md":"https://skillfed.io/packages/django-cursor-pagination.md","pypi":"https://pypi.org/project/django-cursor-pagination/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2024-07-01","license_spdx":null,"license_treatment":"permissive","name":"django-cursor-pagination","python_support":"unspecified","summary":"Cursor based pagination for Django"},"popularity":{"monthly_downloads":110475,"position":12458,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.3.0"}
