@mx7/otp
v1.2.1
Published
A simple OTP generator!
Downloads
12
Readme
OTP generator for NodeJS runtime apps (JavaScript or TypeScript)
Welcome! This node package is built for generating OTP per necessary requirements. It can generate both numeric or alpha-numeric. Hope you will enjoy it!
It can be used with NodeJS runtime and Deno/Bun too! (I guess)
Getting started
Install this package
npm i @mx7/otp # using NPM
# or
yarn add @mx7/top # using yarn
# or
pnpm add @mx7/otp # using pnpm
# or
bun add otp # using bun
How to use
ESM imports
import { generateOtp } from '@mx7/otp'
// or async way
import { generateOtpAsync } from '@mx7/otp'
CommonJS
const { generateOtp } = require('@mx7/otp')
// or async way
const { generateOtpAsync } = require('@mx7/otp')
Requirements
Node: v14.x or later
Environments: ['^ Node14', 'ES5 or later']
Types: ['ESM', 'CJS']
Available APIs
Types
// how the function will operates
function generateOtp(args?: GenerateOtpArgs): string
// arguments with types
type GenerateOtpArgs = {
digits?: number // optional
alpha?: boolean // optional
capitalize?: boolean // optional, but only if alpha is set TRUE!
}
Some examples
import { generateOtp } from '@mx7/otp'
// default => length 6
const otp1 = generateOtp()
console.log(otp1) // returns: '012345'
// default with Async. way => length 6
const otpAsync = await generateOtpAsync() // Promise<string>
console.log(otpAsync) // returns: '012345'
// custom length => i.e. 4
const otp2 = generateOtp({
digits: 4,
})
console.log(otp2) // returns: '0123'
// mix alpha => mixed [a-z]
const otp3 = generateOtp({
alpha: true,
})
console.log(otp3) // returns: '0x27j4'
// mix alpha & uppercase => mixed [A-Z]
const otp4 = generateOtp({
alpha: true,
capitalize: true,
})
console.log(otp4) // returns: '0X27J4'
Author
Changelogs
[1.2.1] 2024-02-02
Fixes
- Fixed async OTP generator function
- Added one more test with async fn
[1.2.0] - 2024-01-25
Feature
- Added
Asynchronous
function for generating OTP - Added Module path aliases
- Added changelogs
- Updated documentation in README file
Fixed
- Fixed some typos
- Fixed npm files selection