npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@dev_x_mohit/opti-kit

v1.2.1

Published

OptiKit is a zero-dependency, ultra-lightweight, and fully tree-shakeable JavaScript/TypeScript utility monorepo library. It ships 37 hand-optimized isomorphic modules. Every function is side-effect free, individually importable, and ships with full TypeS

Readme

OptiKit

The Zero-Dependency, Ultra-Lightweight Utility Engine for Modern JavaScript & TypeScript.

NPM Version Socket Security Bundlephobia Size Dependencies License: MIT

OptiKit is a modern, zero-dependency utility engine designed as a drop-in replacement for legacy, monolithic libraries like Lodash, Rambda, and Moment. Natively built in TypeScript, it packages 67 hand-optimized modules containing 680+ utility functions.

Every export is designed with standard ESM + CJS compatibility, full TypeScript declarations, side-effects-free tree-shaking, and 100% passing test coverage.


⚡ Key Highlights

  • 🌳 100% Tree-Shakeable: Structured with "sideEffects": false so your bundle only includes the functions you actually import.
  • 🛡️ Supply-Chain Immune: 0 external dependencies, 0 network access, and 0 environment variable access. Safe for security-critical applications.
  • 🌐 Isomorphic & Universal: Fully compatible with Node.js (>=18), modern browsers, Cloudflare Workers, Vercel Serverless, Bun, and Deno.
  • ⚡ Ultra-Lightweight: The entire engine of 67 modules and 680+ utilities takes only ~20 KB minified + gzipped.
  • 🧪 Production-Grade Reliability: Covered by 470+ unit tests with 100% test coverage.

📦 Installation

Install the package via your preferred package manager:

# npm
npm install @dev_x_mohit/opti-kit

# pnpm
pnpm add @dev_x_mohit/opti-kit

# yarn
yarn add @dev_x_mohit/opti-kit

# bun
bun add @dev_x_mohit/opti-kit

📂 Categorized Modules (67 Modules)

Rather than dumping a monolithic API, OptiKit organizes its 680+ utilities into dedicated, clean domains:

🗃️ Data & Collections

  • string (45 utils) — Modern string manipulations: slugify, truncate, escapeHtml, titleCase.
  • array (40 utils) — Safe list processing: chunk, unique, groupBy, partition, intersection.
  • object (31 utils) — Deep manipulations: deepClone, deepMerge, flattenObject, pick, omit.
  • collection (12 utils) — Aggregations: countBy, keyBy, sortBy, symmetricDifference.
  • set & map (15 utils) — Advanced Set operations and Map utilities.
  • tree (10 utils) — Hierarchical traversals: arrayToTree, treeToArray, search, mapping.
  • json (6 utils) — Deep JSON operations: jsonClone, jsonFlatten, jsonUnflatten, jsonPath, jsonMerge, jsonDiff.
  • csv (5 utils) — Micro CSV parsers: csvParse, csvToJson, jsonToCsv.
  • ds (4 classes) — Optimized structures: Stack, Queue, PriorityQueue, BiMap.
  • deep (8 utils) — Deep freezing, mapping keys, flattening, omission.

⚙️ Logic & Control Flow

  • async (19 utils) — Concurrency control: debounce, throttle, retry, delay, asyncPool, timeout.
  • functional (14 utils) — FP primitives: curry, partial, pipe, compose, onceFn.
  • events (7 utils) — Pub/Sub emitter: EventEmitter, listen, listenOnce, delegateEvent.
  • store (4 utils) — Micro reactive signals: signal, computed, effect, createStore.
  • cache (2 utils) — TTL caching: LRUCache, memoizeWithTTL.
  • guard (12 utils) — Safe parse boundaries: safeJsonParse, safeParseInt, invariant, attempt.

🛡️ Security & Parsers

  • crypto (10 utils) — Cryptographic utilities: uuid, sha256, sha512, hmacSha256, generateToken.
  • encoding (8 utils) — Fast converters: utf8Encode, utf8Decode, hexEncode, base64Encode.
  • hash (10 utils) — Hashing algorithms (CRC32, DJB2, Base64 encode/decode).
  • validate (28 utils) — Robust format checks: isEmail, isUrl, isUuid, isCreditCard, isJWT.
  • semver (5 utils) — SemVer parser/validator: semverCompare, semverSatisfies.
  • regex (1 obj) — Pre-compiled patterns.

🌐 Web & Dom

  • dom (14 utils) — Browser interaction: copyToClipboard, setCookie, getCookie, createElement.
  • storage (1 obj) — SSR-safe storage: safeStorage (LocalStorage/SessionStorage with JSON + expiry).
  • browser (16 utils) — Environment checks: isBrowser, isChrome, isMobile, isTouchDevice.
  • keyboard (2 utils) — Hotkey event handlers: registerShortcut, isKeyPressed.
  • url (8 utils) — Safe URL parser & builder: joinPaths, parseUrl, buildUrl.

🧮 Math, ML, & Science

  • math (32 utils) — Math operations: clamp, lerp, mean, median, factorial, isPrime, gcd.
  • statistics (12 utils) — Data science math: variance, standardDeviation, covariance, correlation.
  • ml (12 utils) — Machine Learning basics: sigmoid, relu, minMaxScaler, cosineSimilarity.
  • nlp (10 utils) — Natural Language Processing: tokenizeWords, soundex, levenshteinDistance.
  • finance (10 utils) — Financial logic: calculatePMT, compoundInterest, NPV, ROI.
  • geometry (15 utils) — Coord geometry: distance2D, midpoint, rotatePoint, circleArea.
  • units (8 utils) — Converter helper: celsiusToFahrenheit, milesToKilometers.
  • color (18 utils) — Color convert & contrasts: hexToRgb, rgbToHex, generateHexComplementary, A11y.

🛠️ Common Utilities

  • types (16 utils) — Precise runtime check: isNil, isObject, isPromise, isDate.
  • format (9 utils) — Format helpers: formatDuration, formatPhoneNumber, pluralize.
  • schema (12 utils) — Simple rule runner: validateObject, required, minLength.
  • date (20 utils) — Iso-time: relativeTime, formatDate, diffInDays, addDays.
  • template (2 utils) — Simple template engine: render, compile.
  • log (2 utils) — Colored ANSI logger: createLogger, ansi.

🚀 Code Examples

1. Reactive Store (store)

Create ultra-lightweight reactive states in just 4 lines of code:

import { signal, computed, effect } from '@dev_x_mohit/opti-kit';

const count = signal(0);
const doubleCount = computed(() => count.value * 2);

effect(() => console.log(`Count is: ${count.value}, Double is: ${doubleCount.value}`));
// Log: Count is: 0, Double is: 0

count.value = 5;
// Log: Count is: 5, Double is: 10

2. Zero-Throw Storage (storage)

Work with storage in Next.js / SSR environments without window checks or throwing errors:

import { safeStorage } from '@dev_x_mohit/opti-kit';

// Saves with native JSON serialization and an optional 1-minute expiration timer
safeStorage.setItem('session', { userId: 'usr_88', role: 'editor' }, 60000);

// Safely retrieves and parses the object; returns null if expired or missing
const session = safeStorage.getItem('session'); 

3. Concurrency Pool (async)

Limit concurrency when executing large batches of async tasks:

import { asyncPool } from '@dev_x_mohit/opti-kit';

const urls = ['/api/1', '/api/2', '/api/3', '/api/4'];
const fetchTask = async (url: string) => fetch(url).then(r => r.json());

// Executes fetch tasks, processing a maximum of 2 requests concurrently
const results = await asyncPool(2, urls, fetchTask);

4. Deep Merge & Object Flattening (object)

import { deepMerge, flattenObject } from '@dev_x_mohit/opti-kit';

const merged = deepMerge({ a: { b: 1 } }, { a: { c: 2 } }); 
// { a: { b: 1, c: 2 } }

const flat = flattenObject({ user: { address: { city: 'NYC' } } });
// { 'user.address.city': 'NYC' }

🌐 Showcase & Interactive Sandbox


📄 License

MIT © Mohit Lakhara