snap_carousel 0.1.0

Snap Carousel #

An Flutter Snap Carousel which provide ability to show more than one UI component inside the Carousel's viewport. Pull requests are welcome

Features #

  • Use to create Carousel with ability to snap at a position after scrolling

Getting Started #

Make sure you add the lib dependency in your flutter project.

  snap_carousel: 0.1.0

Then you should run flutter packages get to update your packages in your IDE.

Example Project #

Checkout the project inside example folder.

Usage #

Use createCarousel factory function to create an Snap Carousel instance.

  childCount: [CAROUSEL_LENGTH],
  paddingBetweenChildren: [PADDING_BETWEEN_ITEMS],
  onSnap: (page) {
    // Carousel has stop at page.
  itemBuilder: (BuildContext context, int pos) {
    // Build your carousel child.


childCountItems countint
childWidthSingle item widthdouble
paddingHorizontalHorizontal padding of the Carouseldouble
paddingBetweenChildrenHorizontal padding between itemsdouble
onSnapCallback when Carousel snap at a positionValueChanged<int>
itemBuilderItemBuilder which is function receive BuildContext and child's position for you to build Carousel's childrensFunction

Support #

Email me at for any support needed

[0.0.1] - July 28 2019.

  • Project's initialization
  • Support only Horizontal direction
  • Support ItemBuilder like ListView, GridView

[0.0.2] - July 28 2019

  • Fix childCount wasn't integrated into SliverList

[0.0.3] - July 28 2019

  • Remove usages of infinite list
  • Prevent scrolling beyond the end

[0.0.4] - July 28 2019

  • Fix wrong addition into current offset in onHorizontalDragEnd

[0.0.5] - July 28 2019

  • Fix wrong addition into current offset in onHorizontalDragEnd (Pt. 2)

[0.0.6] - July 28 2019

  • Fix wrong addition into current offset in onHorizontalDragEnd (Pt. 3)

[0.0.7] - July 28 2019

  • Remove wrong condition in calculation of current offset

[0.1.0] - August 31 2019

  • Improve scrolling to end conditions
  • Add onSnap callback
  • Add example projects


example #

A new Flutter project.

Getting Started #

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  snap_carousel: ^0.1.0

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:snap_carousel/amazing_carousel.dart';
import 'package:snap_carousel/carousel.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on Feb 21, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.7.1
  • pana: 0.13.5
  • Flutter: 1.12.13+hotfix.7


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.8
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies