npm.io
3.15.0 • Published 6d ago

@rzl-zone/utils-js

Licence
MIT
Version
3.15.0
Deps
5
Size
3.9 MB
Vulns
0
Weekly
643

Utils JS

A lightweight, modern TypeScript utility library for Node.js & browser (via bundlers like Webpack, Turbopack, Rollup, esbuild, and higher-level tools like Vite, tsup and tsdown).
It provides reusable helpers to simplify everyday JavaScript and TypeScript tasks projects.
Built with by @rzl-zone.


Table of Contents


Requirements

  • Node.js ≥18.18.0
    This package leverages modern JavaScript & TypeScript features that require Node.js version 18.18.0.

  • Works with:

  • TypeScript Build Info:

    • Target: ES2022.
    • Module: ES2022.
    • Module Resolution: bundler.

    Note:
    These TypeScript settings are used to build the package, consumers do not need to match these settings unless they plan to build or modify the source code.


Installation

With NPM

npm install @rzl-zone/utils-js@latest

With Yarn

yarn add @rzl-zone/utils-js@latest
With PNPM
pnpm add @rzl-zone/utils-js@latest

Features

  • Written in TypeScript — fully typed & safe.
  • Small, tree-shakable & fast.
  • Works in Node.js & modern browsers.
  • Simple API, easy to extend.

Next.js Support

Starting from version 3.13.0, the following Next.js entry points were removed from @rzl-zone/utils-js and migrated into the dedicated package @rzl-zone/next-kit.

Migrated entry points:

  • @rzl-zone/utils-js/next@rzl-zone/next-kit/utils
  • @rzl-zone/utils-js/next/server@rzl-zone/next-kit/utils/server

Detailed Features

The full UtilsJS documentation is currently under construction .

For now, explore the examples or dive into the source — all utilities are documented via TSDoc and typed properly.
import { /* … */ } from "@rzl-zone/utils-js/assertions";
import { /* … */ } from "@rzl-zone/utils-js/conversions"; 
import { /* … */ } from "@rzl-zone/utils-js/errors";
import { /* … */ } from "@rzl-zone/utils-js/events";
import { /* … */ } from "@rzl-zone/utils-js/formatters";
import { /* … */ } from "@rzl-zone/utils-js/generators";
import { /* … */ } from "@rzl-zone/utils-js/operations";
import { /* … */ } from "@rzl-zone/utils-js/parsers";
import { /* … */ } from "@rzl-zone/utils-js/predicates";
import { /* … */ } from "@rzl-zone/utils-js/promises";
import { /* … */ } from "@rzl-zone/utils-js/strings";
import { /* … */ } from "@rzl-zone/utils-js/tailwind";
import { /* … */ } from "@rzl-zone/utils-js/urls"; 
Place your cursor inside { } or right after the package path @rzl-zone/utils-js/<put-cursor-here>, then press Ctrl+Space (Windows/Linux) or Cmd+Space (macOS), or use your editor’s autocomplete shortcut, to see all available functions and types with full TSDoc hints.

CDN Usage.

Including via CDN:
<!-- jsDelivr -->
<script src="https://cdn.jsdelivr.net/npm/@rzl-zone/utils-js@latest"></script>

<!-- unpkg -->
<script src="https://unpkg.com/@rzl-zone/utils-js@latest"></script>

Note:
When using the library via CDN in the browser:

  • Always include first the <script/> tag before your own scripts when using the CDN version.
  • Some Node.js-specific utilities may not be available, e.g.:
    • Category utils of tailwind.
    • Any server-only features will not be available.
  • The global object provided is RzlUtilsJs.
  • The CDN bundle is ~373KB+ minified, for production, consider using bundlers or npm packages for smaller size and tree-shaking.

Hint: Autocomplete Setup (Step by Step).

Improve TypeScript editor import suggestions for @rzl-zone/utils-js, so all functions, types, and modules appear instantly when triggering autocomplete — press Ctrl+Space (Windows/Linux), ⌘+Space (macOS), or your editor’s autocomplete shortcut.

This works across modern TypeScript-supported editors (e.g., VSCode, WebStorm, Vim extensions, NeoVim LSP, Cursor) without requiring triple-slash references — the package is fully indexed automatically through your editor’s TypeScript language service, follow steps:

  • Install @rzl-zone/utils-js.

  • Create a types folder.

    • Inside your project root, make a folder called types:

      project-root/
        ├─ src/
        ├─ types/
        │  └─ index.d.ts
        ├─ tsconfig.json
        └─ jsconfig.json
  • Add the global reference file.

    • Create types/index.d.ts with this content:

      /// <reference types="@rzl-zone/utils-js/.references" />
    • You can add more references here if needed, for example:

      /// <reference types="@rzl-zone/utils-js/.references" />
      
      // eg more references (if needed):
      /// <reference types="node" />
      /// <reference types="react" />
  • Update tsconfig.json.

    • Make sure add types folder to "include", so TypeScript automatically picks up your types folder:

      // tsconfig.json
      {
        "compilerOptions": {
          "strict": true,
          // other your config...
        },
        "include": ["src", "types"]
        // other your config...
      }
  • Update jsconfig.json (for JavaScript projects).

    • If you also work with JS, do the same:

      // jsconfig.json
      {
        "compilerOptions": {
          "checkJs": true, // Optional, enables type checking
          // other your config...
        },
        "include": ["src", "types"]
        // other your config...
      }

      Tip: For JS projects, consider adding "checkJs": true for better IntelliSense.

  • Restart your editor/IDE.

    • This forces your TypeScript language service to re-index the package.
    • After restart, all functions, types, and modules from @rzl-zone/utils-js will appear instantly in autocomplete.

Usage

Easy to use, just import on your code base.
Example Function Import:
import { isServer } from "@rzl-zone/utils-js/predicates";

console.log(isServer());
// ➔ `true` if running on server-side, `false` if in browser.

Help support development: Become a sponsor.


Changelog

See CHANGELOG.


Contributing

See CONTRIBUTING.


Security

Please report issues to rzlzone.dev@gmail.com.


Credits

- Rzl App.
- All Contributors.


License

The MIT License (MIT).
Please see License File for more information.


Enjoy using @rzl-zone/utils-js?
Star the monorepo and share it with other JavaScript developers!
Explore other packages under @rzl-zone


Keywords