PackageTrack
Sign in Get early access

infinite_scroll_pagination

Lazily load and display pages of items as the user scrolls down your screen.

5.1.1 408K downloads/mo #578 most downloaded on pub.dev EdsonBueno/infinite_scroll_pagination

What this package is like to depend on

Last release 12 months ago

28 Aug 2025

Release timing varies

gaps range from 4 weeks to 1.2 years

Nearly every release is documented

notes for 25 of 26 stable releases

Nothing withdrawn

no release was ever pulled

6 years old

28 releases · first in 2020

0 releases in the last 12 months

see the full history below

Release timeline

28 releases · Aug 2020 to Aug 2025
2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 28
  1. 5.1.1 28 Aug 2025
    Release notes

    Changed

    • Update example widget usage

    Fixed

    • Null check error in pagedlayoutbuilder
    • Bloc example state equality
    • Paging state hash code
    Open source →
    Release notes

    Changed

    • Update example widget usage

    Fixed

    • Null check error in pagedlayoutbuilder
    • Bloc example state equality
    • Paging state hash code
    Open source →
  2. 5.1.0 18 Jun 2025
    Release notes

    Added

    • nextIntPageKey convenience getter for int pages starting at 1
    • lastPageIsEmpty convenience getter for APIs which return empty pages when no more data is available
    • flutter bloc example

    Changed

    • Updated migration guide on how to handle final page

    Fixed

    • disposing PagingController cancels fetch
    Open source →
    Release notes

    Added

    • nextIntPageKey convenience getter for int pages starting at 1
    • lastPageIsEmpty convenience getter for APIs which return empty pages when no more data is available
    • flutter bloc example

    Changed

    • Updated migration guide on how to handle final page

    Fixed

    • disposing PagingController cancels fetch
    Open source →
  3. 5.0.0 24 Feb 2025
    Release notes

    Added

    • PagingListener widget to connect a PagingController to a PagedLayoutBuilder.

    Changed

    • PagingController no longer has addPageRequestListener method and firstPageKey parameter. Use the fetchPage parameter of the constructor instead.
    • PagingController no longer has the itemList, error, and nextPageKey getters and setters. All values are now stored in PagingState.
    • PagingController no longer has the appendPage and appendLastPage methods. Use the copyWith method of PagingState to update its pages, keys, and hasNextPage fields.
    • PagingController no longer has the retryLastFailedRequest method. You can simply call fetchNextPage to try again.
    • PagingController no longer has the invisibleItemsThreshold field. It is now configured in PagedChildBuilderDelegate.
    • PagingController now features getters matching the fields of PagingState as well as mapItems to modify the items.
    • PagedLayoutBuilder no longer accepts pagingController as a parameter. It now takes PagingState and fetchNextPage instead.
    • PagingState now uses pages (List<List<ItemType>>) instead of itemList (List<ItemType>). A new extension getter items is provided for flattening.
    • PagingState now features keys, a list storing all fetched keys, and hasNextPage replacing nextPageKey.
    • PagingState now includes isLoading, which tracks whether a request is in progress.
    • PagingState now provides error as type Object? instead of dynamic.
    • PagingState now includes mapItems and filterItems extension methods for modifying items conveniently.

    Fixed

    • PagingController now deduplicates requests.
    • PagingController refresh operations now cancel previous requests.
    • Off-by-one error in invisibleItemsThreshold calculation.
    • Failure to trigger page request when invisibleItemsThreshold is too large.
    • Animating between states with animateTransitions.
    Open source →
    Release notes

    Added

    • PagingListener widget to connect a PagingController to a PagedLayoutBuilder.

    Changed

    • PagingController no longer has addPageRequestListener method and firstPageKey parameter. Use the fetchPage parameter of the constructor instead.
    • PagingController no longer has the itemList, error, and nextPageKey getters and setters. All values are now stored in PagingState.
    • PagingController no longer has the appendPage and appendLastPage methods. Use the copyWith method of PagingState to update its pages, keys, and hasNextPage fields.
    • PagingController no longer has the retryLastFailedRequest method. You can simply call fetchNextPage to try again.
    • PagingController no longer has the invisibleItemsThreshold field. It is now configured in PagedChildBuilderDelegate.
    • PagingController now features getters matching the fields of PagingState as well as mapItems to modify the items.
    • PagedLayoutBuilder no longer accepts pagingController as a parameter. It now takes PagingState and fetchNextPage instead.
    • PagingState now uses pages (List<List<ItemType>>) instead of itemList (List<ItemType>). A new extension getter items is provided for flattening.
    • PagingState now features keys, a list storing all fetched keys, and hasNextPage replacing nextPageKey.
    • PagingState now includes isLoading, which tracks whether a request is in progress.
    • PagingState now provides error as type Object? instead of dynamic.
    • PagingState now includes mapItems and filterItems extension methods for modifying items conveniently.

    Fixed

    • PagingController now deduplicates requests.
    • PagingController refresh operations now cancel previous requests.
    • Off-by-one error in invisibleItemsThreshold calculation.
    • Failure to trigger page request when invisibleItemsThreshold is too large.
    • Animating between states with animateTransitions.
    Open source →
  4. 4.1.0 09 Nov 2024
    Release notes

    Added

    Changed

    • Updates example.

    Removed

    • pubspec.lock from version control.
    Open source →
    Release notes

    Added

    Changed

    • Updates example.

    Removed

    • pubspec.lock from version control.
    Open source →
  5. 4.0.0 14 Aug 2023
    Release notes
    Open source →
    Release notes

    Added

    Changed

    Open source →
  6. 4.0.0-dev.1 15 Sep 2022 pre-release

    Nothing published for this version

  7. 3.2.0 23 May 2022
    Release notes

    Changed

    • Migrates to Flutter 3.
    Open source →
  8. 3.1.0 03 Jul 2021
    Release notes Open source →
    Release notes Open source →
  9. 3.0.1 08 Mar 2021
    Release notes
    • Fixes code formatting in ListenableListener.
    • Updates sliver_tools dependency.
    • Adds new unit tests.
    Open source →
    Release notes

    Added

    • New unit tests.

    Changed

    Fixed

    • Code formatting in ListenableListener.
    Open source →
  10. 3.0.1+1 23 May 2021
    Release notes
    Open source →
    Release notes

    Added

    Open source →
  11. 3.0.0 04 Mar 2021
    Release notes
    • Promotes null safety to stable release.
    • Migrates example project to null safety.
    • Migrates code samples to null safety.
    Open source →
    Release notes

    Changed

    • Promotes null safety to stable release.
    • Migrates example project to null safety.
    • Migrates code samples to null safety.
    Open source →
  12. 3.0.0-nullsafety.0 06 Feb 2021 pre-release
    Release notes
    • Migrates to null safety.
    Open source →
    Release notes

    Changed

    • Migrates to null safety.
    Open source →
  13. 2.3.0 15 Jan 2021
    Release notes

    Added

    Changed

    • Cookbook file name.
    • LICENSE file.
    Open source →
  14. 2.2.4 08 Jan 2021
    Release notes

    Fixed

    • New page requests happening before the end of the current frame.
    Open source →
  15. 2.2.3 14 Dec 2020
    Release notes

    Fixed

    • Bug in which manually resetting to a previous page would stop requesting subsequent pages.
    Open source →
  16. 2.2.2 04 Nov 2020
    Release notes

    Added

    • Condition to avoid requesting the first page when there are preloaded items.
    Open source →
  17. 2.2.1 21 Oct 2020
    Release notes

    Added

    Changed

    Fixed

    • Separator being displayed on completed lists.
    Open source →
  18. 2.2.0 18 Oct 2020
    Release notes

    Added

    Open source →
  19. 2.2.0+1 19 Oct 2020
    Release notes

    Changed

    • Constraints the Flutter SDK dependency to a minimum version of 1.22.0.
    Open source →
  20. 2.1.0 10 Oct 2020
    Release notes

    Added

    Open source →
  21. 2.1.0+1 13 Oct 2020
    Release notes

    Added

    Changed

    • Examples to async/await.
    Open source →
  22. 2.0.1 03 Oct 2020
    Release notes

    Fixed

    Open source →
  23. 2.0.0 02 Oct 2020
    Release notes

    Changed

    Open source →
  24. 1.1.1 23 Sep 2020
    Release notes

    Removed

    • Scroll from first page progress indicator, first page error indicator, and no items found indicator.
    Open source →
  25. 1.1.0 18 Sep 2020
    Release notes Open source →
  26. 1.0.0 22 Aug 2020

    Nothing published for this version

  27. 1.0.0+1 22 Aug 2020
    Release notes

    Added

    • Images to README.md.
    • Initial release.
    Open source →
  28. 1.0.0+2 22 Aug 2020
    Release notes

    Added

    • Documentation to PagedDataSource properties.

    Changed

    • README images reference URL.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive