New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

react-native-snap-otp

Package Overview
Dependencies
Maintainers
0
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-native-snap-otp

A customizable and easy-to-use OTP (One-Time Password) input component for React Native applications.

  • 1.0.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
0
Weekly downloads
 
Created
Source

react-native-snap-otp · GitHub licensestarsPRs WelcomeGitHub issuesGitHub last commitnpm version

A customizable and easy-to-use OTP (One-Time Password) input component for React Native applications.

Installation

For React-native CLI,

npm install react-native-snap-otp
cd ios
pod install

or

yarn add react-native-snap-otp
cd ios
pod install

For Expo App,

npx expo install react-native-snap-otp

Basic Usage

import React from 'react';
import RNOTPInput from 'react-native-snap-otp';

const [otp, setOtp] = React.useState('');

const handleOTPComplete = (otp: string) => {
  setOtp(otp);
};

<RNOTPInput length={5} onCompleteFn={handleOTPComplete} />;

Customization Examples

Custom styles
<RNOTPInput
  length={6}
  onCompleteFn={handleOTPComplete}
  inputStyle={{
    borderRadius: 10,
    fontSize: 24,
  }}
  containerStyle={{
    marginTop: 20,
    width: '80%',
  }}
  focusStyle={{
    borderColor: 'red',
    borderWidth: 1,
  }}
/>

Props

PropsTypeDefaultRequiredDescription
LengthNumber4NoThe number of OTP input fields, default is 4
onCompleteFnFunction_YesCallback function called when all OTP fields are filled
inputStyleStylePropwidth, height, borderWidth, borderColor, textAlign, fontSizeNoCustom styles for individual input fields
containerStyleStylePropflexDirection, justifyContentNoCustom styles for the container of input fields
focusStyleStyleProp_NoThe onFocus styles for the otp inputs

Features

  • Customizable Length: Set the number of OTP input fields as needed.
  • Auto Focus: Automatically focuses on the next input field after entering a digit
  • Backspace Support: Moves focus to the previous field when pressing backspace on an empty field.
  • Customizable Styling: Apply custom styles to both individual input fields and the container.
  • Completion Callback: Easily handle the completed OTP input with the onComplete callback.

Best Practices

  1. Error Handling: Implement proper error handling and validation for the OTP input.
  2. Accessibility: Ensure the component is accessible by testing with screen readers and adding appropriate labels.
  3. Security: Never store or log the full OTP on the client-side for security reasons.
  4. Timeout: Consider implementing a timeout feature for OTP validity.
  5. Resend Option: Provide an option to resend the OTP if the user doesn't receive it.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License.

Keywords

FAQs

Package last updated on 25 Sep 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc