PackageTrack
Sign in Get early access

carousel_slider

A carousel slider widget, support infinite scroll and custom child widget.

5.1.2 1000K downloads/mo #41 most downloaded on pub.dev serenader2014/flutter_carousel_slider

What this package is like to depend on

Last release 6 months ago

05 Feb 2026

Release timing varies

gaps range from 2 weeks to 1.7 years

Nearly every release is documented

notes for 31 of 34 stable releases

Nothing withdrawn

no release was ever pulled

8 years old

35 releases · first in 2018

1 release in the last 12 months

see the full history below

Release timeline

35 releases · Apr 2018 to Feb 2026
2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 35
  1. 5.1.2 05 Feb 2026
    Release notes

    chore: bump version to 5.1.2

    Open source →
    Release notes
    • [Fix] Fix memory leak by properly disposing PageController (#493)
    • [Fix] Prevent crash when calling animateToPage/jumpToPage before PageController is ready (#491)
    Open source →
  2. 5.1.1 07 Jun 2025
    Release notes
    • [Fix] Fix lint issue
    Open source →
  3. 5.1.0 07 Jun 2025
    Release notes
    • [Feat] Support Apple Pencil
    • [Fix] Fix RangeError (length): Invalid value: Valid value range is empty: 0
    Open source →
  4. 5.0.0 09 Aug 2024
    Release notes
    • [FIX] Rename CarouselController to CarouselSliderController
    Open source →
  5. 4.2.1 13 Dec 2022
    Release notes
    • [FIX] temporary remove PointerDeviceKind.trackpad
    • [FIX] fix 'double?' type
    Open source →
  6. 4.2.0 09 Dec 2022
    Release notes
    • [Add] enlargeFactor option

    • [Add] CenterPageEnlargeStrategy.zoom option

    • [Add] animateToClosest option

    • [FIX] clear timer if widget was unmounted

    • [FIX] scroll carousel using touchpad

    Open source →
  7. 4.1.1 23 Apr 2022
    Release notes
    • Fix code formatting
    Open source →
  8. 4.1.0 23 Apr 2022
    Release notes

    Add

    • Exposed clipBehavior in CarouselOptions
    • Exposed padEnds in CarouselOptions
    • Add copyWith method to CarouselOptions

    Fix

    • [FIX] Can't swipe on web with Flutter 2.5
    Open source →
  9. 4.0.0 19 Jun 2021
    Release notes
    • Support null safety (Null safety isn't a breaking change and is Backward compatible meaning you can use it with non-null safe code too)
    • Update example code to null safety and add Dark theme support and controller support to indicators in on of the examples and also fix overflow errors.
    Open source →
  10. 4.0.0-nullsafety.0 30 Jan 2021 pre-release

    Nothing published for this version

  11. 3.0.0 30 Jan 2021
    Release notes

    Add

    • Add third argument in itemBuilder, allow Hero and infinite scroll to coexist

    Breaking change

    • itemBuilder needs to accept three arguments, instead of two.
    Open source →
  12. 2.3.4 30 Jan 2021
    Release notes

    Fix

    • Rollback PR #222, due to it will break the existing project.
    Open source →
  13. 2.3.3 30 Jan 2021
    Release notes
    • Fix code formatting
    Open source →
  14. 2.3.2 30 Jan 2021
    Release notes

    Fix

    • Double pointer down and up will cause a exception
    • Fix CarouselPageChangedReason

    Add

    • Allow Hero and infinite scroll to coexist
    Open source →
  15. 2.3.1 26 Sep 2020
    Release notes
    • Fix code formatting
    Open source →
  16. 2.3.0 26 Sep 2020
    Release notes

    Fix

    • Fixed unresponsiveness to state changes

    Add

    • Added start/stop autoplay functionality
    • Pause auto play if not current route
    • Add pageSnapping option for disable page snapping for the carousel
    Open source →
  17. 2.2.1 22 Jun 2020
    Release notes

    Fix

    • Fixed carousel_options.dart and carousel_controller not being exported by default.
    Open source →
  18. 2.2.0 21 Jun 2020
    Release notes

    Add

    • disableCenter option

    This option controls whether the carousel slider item should be wrapped in a Center widget or not.

    • enlargeStrategy option

    This option allow user to set which enlarge strategy to enlarge the center slide. Use CenterPageEnlargeStrategy.height if you want to improve the performance.

    Fix

    • Fixed CarousePageChangedReason.manual never being emitted
    Open source →
  19. 2.1.0 03 May 2020
    Release notes

    Add

    • pauseAutoPlayOnTouch option

    This option controls whether the carousel slider should pause the auto play function when user is touching the slider

    • pauseAutoPlayOnManualNavigate option

    This option controls whether the carousel slider should pause the auto play function when user is calling controller's method.

    • pauseAutoPlayInFiniteScroll option

    This option decide the carousel should go to the first item when it reach the last item or not.

    • pageViewKey option

    This option is useful when you want to keep the pageview's position when it was recreated.

    Fix

    • Fix CarouselPageChangedReason bug

    Other updates

    • Use Transform.scale instead of SizedBox to wrap the slider item
    Open source →
  20. 2.0.0 16 Apr 2020
    Release notes

    Breaking change

    Instead of passing all the options to the CarouselSlider, now you'll need to pass these option to CarouselOptions:

    CarouselSlider(
      CarouselOptions(height: 400.0),
      items: [1,2,3,4,5].map((i) {
        return Builder(
          builder: (BuildContext context) {
            return Container(
              width: MediaQuery.of(context).size.width,
              margin: EdgeInsets.symmetric(horizontal: 5.0),
              decoration: BoxDecoration(
                color: Colors.amber
              ),
              child: Text('text $i', style: TextStyle(fontSize: 16.0),)
            );
          },
        );
      }).toList(),
    )
    

    Add

    • CarouselController

    Since v2.0.0, carousel_slider plugin provides a way to pass your own CaourselController, and you can use CaouselController instance to manually control the carousel's position. For a more detailed example please refer to example project.

    • CarouselPageChangedReason

    Now you can receive a CarouselPageChangedReason in onPageChanged callback.

    Remove

    • pauseAutoPlayOnTouch

    pauseAutoPlayOnTouch option is removed, because it doesn't fix the problem we have. Currently, when we enable the autoPlay feature, we can not stop sliding when the user interact with the carousel. This is a flutter's issue.

    Open source →
  21. 1.4.1 10 Jan 2020
    Release notes

    Fix

    • Fix animateTo()/jumpTo() with non-zero initialPage
    Open source →
  22. 1.4.0 30 Dec 2019
    Release notes

    Add

    • Add on-demand item feature

    Fix

    • Fix setState() called after dispose() bug
    Open source →
  23. 1.3.1 05 Sep 2019
    Release notes

    Add

    • Scroll physics option

    Fix

    • onPage indexing bug
    Open source →
  24. 1.3.0 19 Mar 2019
    Release notes

    Deprecation

    • Remove the deprecated param: interval, autoPlayDuration, distortion, updateCallback. Please use the new param.

    Fix

    • Fix enlargeCenterPage option is not working in vertical carousel slider.
    Open source →
  25. 1.2.0 19 Mar 2019
    Release notes

    Add

    • Vertical scroll support
    • Enable/disable infinite scroll
    Open source →
  26. 1.1.0 20 Feb 2019
    Release notes

    Add

    • Added pauseAutoPlayOnTouch option
    • Add documentation
    Open source →
  27. 1.0.1 06 Dec 2018
    Release notes

    Add

    • Update doc
    Open source →
  28. 1.0.0 06 Dec 2018
    Release notes

    Add

    • Added distortion option
    Open source →
  29. 0.0.7 29 Aug 2018

    Nothing published for this version

  30. 0.0.6 08 Jul 2018
    Release notes

    Fix

    • Fix hard coded number
    Open source →
  31. 0.0.5 03 Jul 2018
    Release notes

    Fix

    • Fix initialPage bug, fix crash when widget is disposed.
    Open source →
  32. 0.0.4 08 May 2018

    Nothing published for this version

  33. 0.0.3 08 May 2018

    Nothing published for this version

  34. 0.0.2 17 Apr 2018
    Release notes

    Remove useless dependencies, add changelog.

    Open source →
  35. 0.0.1 17 Apr 2018
    Release notes

    Initial version.

    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