Gathering detailed insights and metrics for react-native-step-by-step-process
Gathering detailed insights and metrics for react-native-step-by-step-process
Gathering detailed insights and metrics for react-native-step-by-step-process
Gathering detailed insights and metrics for react-native-step-by-step-process
npm install react-native-step-by-step-process
Typescript
Module System
Node Version
NPM Version
TypeScript (95.98%)
JavaScript (4.02%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
14 Stars
9 Commits
2 Forks
2 Watchers
2 Branches
1 Contributors
Updated on Jun 19, 2025
Latest Version
1.4.0
Package Id
react-native-step-by-step-process@1.4.0
Unpacked Size
94.86 kB
Size
13.23 kB
File Count
8
NPM Version
9.5.0
Node Version
18.8.0
Published on
Mar 21, 2023
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
1
2
A simple and fully customizable & fully adaptive UI with Android
, iOS
, iPad
React Native component that implements a process steps UI.
useProcess
Hook will help to get & set current step indexs & more.iOS | Android |
---|---|
![]() |
If using yarn:
yarn add react-native-step-by-step-process
If using npm:
npm i react-native-step-by-step-process
import { ProcessContainer, createProcess, useProcess} from 'react-native-step-by-step-process';
First create Screen Component which will look like below and wrrap that with ProcessContainer
and pass initial Number Of Steps to initialNumberOfSteps
.
import React from 'react';
import {ProcessContainer} from 'react-native-step-by-step-process';
import ProcessStepsCompoents from '../components/ProcessStepsCompoents';
const ProcessStepsScreen = () => {
return (
<ProcessContainer initialNumberOfSteps={5}>
<ProcessStepsCompoents />
</ProcessContainer>
);
};
export default ProcessStepsScreen;
Simply create process using createProcess
method which will return Process
Object and using that Process
Object, place a <Process.Step />
tag for each desired step within the <Process.ProcessFlow />
wrapper.
import React from "react";
import { Text, View } from "react-native";
import {createProcess, useProcess} from 'react-native-step-by-step-process';
const Process = createProcess();
const ProcessStepsCompoents = () => {
const {currentStep, activeStep} = useProcess();
return (
<View>
<Process.ProcessFlow>
<Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 1!</Text>
</View>
</Process.Step>
<Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 2!</Text>
</View>
</Process.Step>
<Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 3!</Text>
</View>
</Process.Step>
<Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 4!</Text>
</View>
</Process.Step>
<Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 4!</Text>
</View>
</Process.Step>
</Process.ProcessFlow>
</View>
);
};
export default ProcessStepsCompoents;
The errors
should be used if there's a need for validation and error handling when clicking the next button. If you would like to prevent the next step from being rendered, Just return
true
or false
from onNext
function and onPrevious
function. See below example below :
Example usage of validation check:
import React from "react";
import { Text, View } from "react-native";
import {createProcess, useProcess} from 'react-native-step-by-step-process';
const Process = createProcess();
const ProcessStepsScreen = () => {
const {currentStep, activeStep} = useProcess();
const onPressNextInStep = (nextStepIndex) => {
if(nextStepIndex === 2){
return true; // This will prevent the next step from being rendered
}
}
return (
<Process.ProcessFlow
activeStepIconColor={'#60a4ac'}
labelStyle={{color: '#60a4ac'}}
nextButtonStyle={{backgroundColor: '#60a4ac'}}
nextButtonTextStyle={{color: 'black'}}
previousButtonStyle={{backgroundColor: '#60a4ac'}}
previousButtonTextStyle={{color: 'black'}}
nextButtonText={t('txtProceed')}
previousButtonText={t('back')}
onNext={onPressNextInStep}>
<Process.Step
label={t('txtFillStepDate')}
showFirstStepPreviousButton={true}>
<View style={{ alignItems: 'center' }}>
<Text>Step 1!</Text>
</View>
</Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 2!</Text>
</View>
</Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 3!</Text>
</View>
</Process.Step>
<View style={{ alignItems: 'center' }}>
<Text>Step 4!</Text>
</View>
</Process.Step>
</Process.ProcessFlow>
);
};
export default ProcessStepsScreen;
Name | Description | Default | Type |
---|---|---|---|
activeStepIconColor | Color of the active step icon | transparent | String |
completedStepIconColor | Color of the completed step icon | #4bb543 | String |
activeStepNumColor | Color of the active step number | black | String |
disabledStepNumColor | Color of the disabled step number | white | String |
completedCheckColor | Color of the completed step checkmark | white | String |
isComplete | Set all Steps to active state | false | Boolean |
Name | Description | Default | Type |
---|---|---|---|
label | Title of the current step to be displayed | null | String |
onNext | Function called when the next step button is pressed | null | Func |
onPrevious | Function called when the previous step button is pressed | null | Func |
onSubmit | Function called when the submit step button is pressed | null | Func |
nextButtonText | Text to display inside the next button | Next | String |
previousButtonText | Text to display inside the previous button | Previous | String |
finishButtonText | Text to display inside the button on the last step | Submit | String |
nextButtonStyle | Style object to provide to the next/finish buttons | { textAlign: 'center', padding: 8 } | Object |
nextButtonTextStyle | Style object to provide to the next/finish button text | { color: '#007aff', fontSize: 18 } | Object |
nextButtonDisabled | Value to disable/enable next button | false | Boolean |
previousButtonStyle | Style object to provide to the previous button | { textAlign: 'center', padding: 8 } | Object |
previousButtonTextStyle | Style object to provide to the previous button text | { color: '#007aff', fontSize: 18 } | Object |
previousButtonDisabled | Value to disable/enable previous button | false | Boolean |
removeButtonRow | Used to render the process step without the button row | false | Boolean |
showFirstStepPreviousButton | Used to render the previous button in first step | false | Boolean |
Pull requests are always welcome! Feel free to open a new GitHub issue for any changes that can be made.
MIT
No vulnerabilities found.
No security vulnerabilities found.