nice_intro

Get your users to know your app with ease

Getting Started

Onboarding is a great way to introduce your app to newcomers, to help them quickly adapt to the new conditions so that they can get the most out of your app

Pub Version Donate

A Flutter package to build awesome intro slides for your apps.

Demo

This is somehow what you can expect from this package :)

Package Demo package demo

Installation

Add the following to pubspec.yaml:

dependencies:
  nice_intro: ^0.1.4

Usage Example

First, import the following files

import 'package:nice_intro/intro_screen.dart';
import 'package:nice_intro/intro_screens.dart';

Then, create a list of screens each one with the IntroSreen class:

List<IntroScreen> pages =  [
        IntroScreen(
          title: 'Search',
          imageAsset: 'assets/img/1.png',
          description: 'Quickly find all your messages',
          headerBgColor: Colors.white,
        ),
        IntroScreen(
          title: 'Focused Inbox',
          headerBgColor: Colors.white,
          imageAsset: 'assets/img/2.png',
          description: "We've put your most important, actionable emails here",
        ),
        IntroScreen(
          title: 'Social',
          headerBgColor: Colors.white,
          imageAsset: 'assets/img/3.png',
          description: "Keep talking with your mates",
        ),
      ];

You'll come up with a list of nice slides screens.

Finally, pass the pages to an instance of IntroScreens class:

IntroScreens introScreens = IntroScreens(
      footerBgColor: TinyColor(Colors.blue).lighten().color,
      activeDotColor: Colors.white,
      footerRadius: 18.0,
      indicatorType: IndicatorType.CIRCLE,
      pages:pages

    return Scaffold(
      body: introScreens,
    );

And pass it to your scaffold widget.

Documentation

IntroScreen widget's properties

NameTypeDefaultDescription
titleStringrequiredSet the title of your slide screen
descriptionStringrequiredSet the description of your slide screen
headerStringContainer()Set the widget to use as the header part of your screen
imageAssetStringnullSet the image path of your slide screen
textStyleTextStylenullSet the style of the title and description of your slide
headerBgColorColorColors.whiteSet the background color of the slide
headerPaddingEdgeInsetsEdgeInsets.all(12)Set the padding of the header part of your slide screen

IntroScreens widget's properties

NameTypeDefaultDescription
slidesList<IntroScreen>requiredlist of your slides
onDoneFunctionrequiredSet the action to do when the last slide is reached
onSkipFunctionrequiredSet the action to do when the user skips the slides
footerRadiusdouble12.0Set the radius of the footer part of your slides
footerBgColorColorColor(0xff51adf6)Set the background color of the footer part of your slides
footerGradientsList<Color>[]Set the list of colors for the gradient of the footer part of your slides
footerPaddingEdgeInsetsEdgeInsets.all(24)Set the padding of the footer part of your slides
indicatorTypeIndicatorTypeIndicatorType.CIRCLESet the type of indicator for your slides
activeDotColorColorColors.whiteSet the color of the active indicator color
inactiveDotColorColornullSet the color of an inactive indicator color
skipTextString"Skip"Set the text of the skip widget
nextWidgetWidgetSet the widget to use for next interaction of your slides
doneWidgetWidgetSet the widget to display when the last slide is reached
viewPortFractiondouble1.0Set the viewport fraction of your slides
textColorColorColors.whiteSet the text color of the footer part of your slides
physicsScrollPhysicsBouncingScrollPhysicsSet the physics for the page view

IndicatorType enum properties

  • IndicatorType.CIRCLE
  • IndicatorType.LINE
  • IndicatorType.DIAMOND

Now enjoy!

Refer to example folder and the source code for more information.

Libraries

intro_screen
intro_screens
nice_intro
page_indicator