1.0.6 • Published 7 months ago

react-native-swipe-onboarding v1.0.6

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

React Native Swipe Onboarding

A customizable and animated swipe onboarding component for React Native, allowing developers to create engaging onboarding experiences with minimal effort.

Features

  • Swipeable onboarding slides
  • Fully customizable styles and content
  • Smooth animations between slides
  • Background and button color support for each slide
  • Automatic slide transition with delay support
  • Easy-to-use API

Installation

Install the package via npm:

npm install react-native-swipe-onboarding

Or via Yarn:

yarn add react-native-swipe-onboarding

Usage

import React from 'react';
import { View, Image } from 'react-native';
import SwipeOnboarding from 'react-native-swipe-onboarding';

const App = () => {
  const onboardingData = [
    {
      title: 'Welcome to the App',
      description: 'Discover new features and functionality to enhance your experience.',
      icon: <Image source={require('./assets/icon1.png')} style={{ width: 100, height: 100 }} />,
      backgroundColor: '#FFEEE4',
      buttonColor: '#FF6347',
      buttonTextColor: '#FFFFFF',
      textColor: '#000000',
    },
    {
      title: 'Track Your Progress',
      description: 'Keep track of your activities and monitor your achievements.',
      icon: <Image source={require('./assets/icon2.png')} style={{ width: 100, height: 100 }} />,
      backgroundColor: '#E4F4FF',
      buttonColor: '#4682B4',
      buttonTextColor: '#FFFFFF',
      textColor: '#000000',
    },
    {
      title: 'Stay Connected',
      description: 'Connect with others and share your progress with friends.',
      icon: <Image source={require('./assets/icon3.png')} style={{ width: 100, height: 100 }} />,
      backgroundColor: '#E4FFE5',
      buttonColor: '#32CD32',
      buttonTextColor: '#FFFFFF',
      textColor: '#000000',
    },
  ];

  const handleFinish = () => {
    console.log('Onboarding finished!');
  };

  return (
    <SwipeOnboarding
      data={onboardingData}
      onFinish={handleFinish}
      nextLabel="Next"
      prevLabel="Back"
      finishLabel="Get Started"
      autoChange={true}
      delay={4000}
      indicatorStyle={{ backgroundColor: 'gray' }}
      containerStyle={{ borderRadius: 10 }}
      textStyle={{ fontSize: 16 }}
    />
  );
};

export default App;

Props

PropTypeDefault ValueDescription
dataArray[]Array of objects containing title, description, icon, backgroundColor, buttonColor, buttonTextColor, and textColor.
onFinishFunctionundefinedCallback function executed after the last slide
nextLabelstring"Next"Label for the "Next" button
prevLabelstring"Previous"Label for the "Previous" button
finishLabelstring"Finish"Label for the "Finish" button
indicatorStyleobject{}Custom styles for the slide indicators
containerStyleobject{}Custom styles for the overall container
textStyleobject{}Custom styles for the button text
autoChangebooleanfalseAutomatically change slides after a delay
delaynumber3000Delay in milliseconds for auto-changing slides (if autoChange is true)

Example Data Structure

const onboardingData = [
  {
    title: 'Welcome',
    description: 'This is the first slide.',
    icon: <Image source={require('./assets/icon1.png')} style={{ width: 100, height: 100 }} />,
    backgroundColor: '#FFEEE4',
    buttonColor: '#FF6347',
    buttonTextColor: '#FFFFFF',
    textColor: '#000000',
  },
  {
    title: 'Learn More',
    description: 'Here is some additional information.',
    icon: <Image source={require('./assets/icon2.png')} style={{ width: 100, height: 100 }} />,
    backgroundColor: '#E4F4FF',
    buttonColor: '#4682B4',
    buttonTextColor: '#FFFFFF',
    textColor: '#000000',
  },
];

Customization

You can customize the following:

  • Slide Content: Provide title, description, icon, backgroundColor, buttonColor, buttonTextColor, and textColor for each slide.
  • Buttons: Change the text, style, and labels for navigation buttons.
  • Indicators: Style the slide indicators to match your design.
  • Automatic Transition: Enable or disable auto-changing slides with a custom delay.

License

This project is licensed under the MIT License. See the LICENSE file for details.

1.0.6

7 months ago

1.0.5

7 months ago

1.0.4

7 months ago

1.0.3

7 months ago

1.0.2

7 months ago

1.0.1

7 months ago

1.0.0

7 months ago