Skip to content

@ryanuo/utils

npm versionnpm downloadsbundle sizeJSDocsLicense

Overview

@ryanuo/utils is a powerful utility library that provides a variety of practical helper functions across multiple domains such as algorithms, browser operations, network requests, and more, aiming to boost development efficiency.

  • AI Module: Provides utility functions related to artificial intelligence to aid AI development.
  • Algorithm Module: Contains implementations of commonly used algorithms for quick integration.
  • Browser Module: Offers utility functions for browser environments to simplify DOM manipulation and event handling.
  • Node.js Module: Specifically designed utility functions for Node.js environment to enhance productivity.
  • Finance Module: Includes utility functions relevant to financial calculations suitable for finance-related scenarios.
  • Graphics Module: Provides utility functions related to graphics processing ideal for image and graphic development.
  • Network Module: Contains utility functions for network requests and data processing to streamline network operations.
  • Common Module: Provides general-purpose foundational utility functions applicable in various scenarios.

Installation

Install using npm:

bash
npm install @ryanuo/utils

Install using pnpm:

bash
pnpm add @ryanuo/utils

Install using yarn:

bash
yarn add @ryanuo/utils

Usage

ts
// Module to be used in both browser and Node environments
import { /* shared utility functions */ } from '@ryanuo/utils'

// Module to be used only in Node environment
// Note: This module includes functionalities specifically designed for Node, such as file operations, network requests, etc.
import { /* Node-specific utility functions */ } from '@ryanuo/utils/node'

Available Utilities

Below are the module categories available in the utility library:

TypeFunction List
AilinearRegression()normalizeData()normalizeMinMax()
AlgorithmbinarySearch()bubbleSort()fibonacciDP()fibonacciRecursive()isPrime()quickSort()
BrowsercopyToClipboard()enterFullScreen()isMobile()manageClasses()onceEventListener()downloadFile()safeStorage()getUrlParams()getUrlParamsString()
CommondateFormat()dayjs()curry()debounce()getUuid()safeJSONParse()throttle()isBoolean()isBrowser()isDate()isEmptyObject()isFunction()isNull()isNumber()isObject()isRegExp()isString()isUndefined()deepClone()getTypeName()numberToFixed()toString()
FinanceformatCurrency()calculatePercentage()compare()preciseAdd()preciseDiv()preciseMul()preciseSub()roundTo()decimal()
GraphicshexToRgba()lerpColor()rgbaToHex()
NetworkcheckNetworkStatus()fetchWithTimeout()getClientIP()getIndexedDBCache()parallelRequests()request()
Nodelogger()mkdirp()rmrf()

License

MIT License © 2023-PRESENT ryanuo