Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@rahulv.dev/rng

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@rahulv.dev/rng

A secure random number generator.

  • 1.2.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2
increased by100%
Maintainers
1
Weekly downloads
 
Created
Source

@rahulv.dev/rng

Secure, cryptographic random number generation for Node.js and browsers. This package provides an easy-to-use interface for generating random numbers within specified ranges, leveraging the native Crypto API.

Features

  • Generate a secure random number up to a specified upper limit.
  • Generate secure random numbers for an array of upper limits.

Installation

Install @rahulv.dev/rng using npm:

npm install @rahulv.dev/rng

or using yarn:

yarn add @rahulv.dev/rng

or using pnpm:

pnpm install @rahulv.dev/rng

Usage

Importing the module

// For Node environment
import { RNG } from "@rahulv.dev/rng";

Initializing the RNG

Before using the RNG, you need to initialize it:

function setupRng() {
    const rng = new RNG();
    return rng;
}

Generating a Random Number

To generate a random number within a specified range:

function generateRandom() {
    const rng = setupRng();
    const randomNumber = rng.next(100); // Generates a random number between 0 and 99
    console.log(randomNumber);
}

generateRandom();

Generating Multiple Random Number

To generate a random number within a specified range:

function generateMultipleRandoms() {
    const rng = setupRng();
    const randomNumbers = rng.nextRange([10, 100, 1000]);
    console.log(randomNumbers); // e.g., [2, 59, 874]
}

generateMultipleRandoms();

API Reference

Here’s a detailed look at the API methods provided by @rahulv.dev/rng:

MethodDescriptionParametersReturns
next(upperLimit)Generates a secure random number between 0 and upperLimit - 1.upperLimit: number: The upper limit for the random number (exclusive)number: A random number within the specified range.
nextRange(ranges)Generates random numbers for an array of upper limits.ranges: number[]: An array of upper limits. Each element specifies the exclusive upper limit for the corresponding random number.number[]: An array of random numbers, each within the range specified by the corresponding element in the input array.

Usage Examples

Here is a complete usage examples of how to use the methods provided by @rahulv.dev/rng:

import { RNG } from "@rahulv.dev/rng";

function main() {
    const rng = new RNG();

    // Generating a single random number
    const randomNumber = rng.next(100);
    console.log(`Random Number: ${randomNumber}`);

    // Generating multiple random numbers
    const randomNumbers = rng.nextRange([10, 100, 1000]);
    console.log(`Random Numbers: ${randomNumbers.join(", ")}`);
}

main();

NOTE: If you are unable to use package with vite, install Vite Pollyfills.

Contributing

Contributions are always welcome! Create an issue or raise a PR for contributing.

License

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

Keywords

FAQs

Package last updated on 03 Aug 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