Introduction
@catbee/utils – The Ultimate Utility Toolkit for Node.js & TypeScript
A modular, production-grade utility library for Node.js and TypeScript, built for robust, scalable applications and enterprise Express services. Every utility is tree-shakable, fully typed, and can be imported independently for optimal bundle size.
🚀 Features
- Type-safe: All utilities are fully typed for maximum safety and IDE support.
- Tree-shakable: Import only what you need—no bloat, no dead code.
- Production-ready: Designed for high-performance, scalable Node.js apps.
- Express-friendly: Includes context, middleware, decorators, and server helpers.
- Comprehensive: Covers arrays, objects, strings, streams, requests, responses, performance, caching, validation, and more.
- Configurable: Global config system with environment variable support.
- Minimal dependencies: Minimal footprint, maximum reliability.
📦 Installation
npm i @catbee/utils
⚡ Quick Start
import { chunk, sleep, getLogger, uuid, isEmail } from '@catbee/utils';
// Chunk an array
const result = chunk([1, 2, 3, 4, 5], 2); // [[1, 2], [3, 4], [5]]
// Sleep for 1 second
await sleep(1000);
// Log with context
getLogger().info('App started');
// Generate a secure UUID
console.log(uuid()); // e.g. 2a563ec1-caf6-4fe2-b60c-9cf7fb1bdb7f
// Basic validation
console.log(isEmail('user@example.com')); // true
🏁 Usage Philosophy
Import only what you need to keep your bundle size small and your codebase clean:
import { chunk, sleep, TTLCache, getLogger } from '@catbee/utils';
⚙️ Configuration
Global configuration management with environment variable support:
- Config – Centralized runtime configuration
🏢 Express Server
Enterprise-grade Express server utilities:
- Express Server – Fast, secure, and scalable server setup
🧩 Utility Modules
Explore the full suite of utilities, each with detailed API docs and examples:
- Array Utilities – Advanced array manipulation
- Async Utilities – Promise helpers, concurrency, timing
- Cache Utilities – In-memory caching with TTL
- Context Store – Per-request context via AsyncLocalStorage
- Crypto Utilities – Hashing, encryption, tokens
- Date Utilities – Date/time manipulation
- Decorators Utilities – TypeScript decorators for Express
- Directory Utilities – Directory and file system helpers
- Environment Utilities – Env variable management
- Exception Utilities – HTTP and error handling
- File System Utilities – File operations
- HTTP Status Codes – Typed status codes
- ID Utilities – UUID and ID generation
- Logger Utilities – Structured logging with Pino
- Middleware Utilities – Express middleware collection
- Object Utilities – Deep merge, flatten, pick/omit, etc.
- Performance Utilities – Timing, memoization, memory tracking
- Request Utilities – HTTP request parameter parsing/validation
- Response Utilities – Standardized API response formatting
- Stream Utilities – Stream conversion, batching, throttling, line splitting
- String Utilities – Casing, masking, slugifying, formatting
- Type Utilities – Type checking, conversion, guards
- URL Utilities – URL parsing, query manipulation, normalization
- Validate Utilities – Input validation functions
📜 License
MIT © Catbee Technologies (see the LICENSE file for the full text)