flutter_carousel_intro 1.0.9 copy "flutter_carousel_intro: ^1.0.9" to clipboard
flutter_carousel_intro: ^1.0.9 copied to clipboard

outdated

The FlutterCarouselIntro is an amazing package that makes it easy to build and implement animated onboarding screens in Flutter applications.

English | Português

flutter_carousel_intro #

by: Eliezer António

see in Flutter Gems: https://fluttergems.dev/packages/flutter_carousel_intro

Swipe the carousel to the current clicked indicator

Current Features #

  • ✅ Custom child widgets
  • ✅ Slide
  • ✅ Rotate transition
  • ✅ Auto play
  • ✅ Horizontal transition
  • ✅ Vertical transition
  • ✅ Swipe the carousel to the current clicked indicator

Features to be implemented #

  • ❌ Repeat
  • ❌ Forward button & Back button (isn't very important)

Supported Platforms #

  • Flutter Android
  • Flutter iOS
  • Flutter web
  • Flutter desktop

Preview #

Installation #

Add flutter_carousel_intro: ^1.0.10 to your pubspec.yaml dependencies. And import it:

import 'package:flutter_carousel_intro/flutter_carousel_intro.dart';

How to use #

FlutterCarouselIntro(  
      slides: [
       SliderItem(
            title: 'Title 1',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-1.svg"),
          ),
          SliderItem(
            title: 'Title 2',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-2.svg"),
          ),
          SliderItem(
            title: 'Title 3',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-3.svg"),
          ),
          SliderItem(
            title: 'Title 4',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-4.svg"),
          ),
          SliderItem(
            title: 'Title 5',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-5.svg"),
            subtitleTextStyle: Theme.of(context).textTheme.displaySmall,
          ),
      ],
    );

All SliderItem parameters #


  String? title,
  TextStyle? titleTextStyle,
  TextAlign? titleTextAlign,
  String? subtitle,
  TextStyle? subtitleTextStyle,
  TextAlign? subtitleTextAlign,

General Example #

class MySlideShow extends StatelessWidget {
  const MySlideShow({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return FlutterCarouselIntro(
        animatedRotateX: true,
        animatedRotateZ: true,
        scale: true,
        autoPlay: true,
        animatedOpacity: true,
        autoPlaySlideDuration: const Duration(seconds: 2),
        autoPlaySlideDurationTransition: const Duration(milliseconds: 1100),
        primaryColor: Colors.pink,
        secondaryColor: Colors.grey,
        scrollDirection: Axis.horizontal,
        indicatorAlign: IndicatorAlign.bottom,
        indicatorEffect: IndicatorEffects.jumping,
        showIndicators: true,
        slides: [
          SliderItem(
            title: 'Title 1',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-1.svg"),
          ),
          SliderItem(
            title: 'Title 2',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-2.svg"),
          ),
          SliderItem(
            title: 'Title 3',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-3.svg"),
          ),
          SliderItem(
            title: 'Title 4',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-4.svg"),
          ),
          SliderItem(
            title: 'Title 5',
            subtitle: 'Lorem Ipsum is simply dummy text of the printing',
            widget: SvgPicture.asset("assets/slide-5.svg"),
            subtitleTextStyle: Theme.of(context).textTheme.displaySmall,
          ),
        ],
      );
  }
}

Gif #

Normal Example:

Animated Opacity

[normal]

animatedOpacity: true

Animated Scale

scale: true

Animated Rotation on the X Axis

animatedRotateX: true

Animated Rotation on the Z Axis

animatedRotateZ: true

Contributions #

Feel free to contribute to this project.

If you find a bug or want a feature, but don't know how to fix/implement it, please fill an [issue][issue].
If you fixed a bug or implemented a feature, please send a [pull request][pr].

My Packages #

Flutter Responsivity Widget

Avoid Conflitos

32
likes
0
points
20
downloads

Publisher

unverified uploader

Weekly Downloads

The FlutterCarouselIntro is an amazing package that makes it easy to build and implement animated onboarding screens in Flutter applications.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, provider

More

Packages that depend on flutter_carousel_intro