@re-code/web_utils
v0.0.1
Published
Lightweight JS utils library
Downloads
8
Readme
@re-code/web_utils
A modern, lightweight, and strongly-typed collection of web utilities. Designed as an efficient alternative to heavier libraries (like Lodash), optimized for Tree Shaking, and built with TypeScript in mind from day one.
🚀 Features
- Tree Shakeable: Import only what you need. Your final bundle won't grow unnecessarily.
- TypeScript First: Includes advanced generic types and type utilities (
Awaitable,DeepPartial, etc.) out of the box. - Zero Dependencies: No bloatware, just pure and efficient code.
- Isomorphic: Works seamlessly in both Node.js and modern browsers.
📦 Installation
npm install @re-code/web_utils
OR
yarn add @re-code/web_utils
OR
pnpm add @re-code/web_utils🛠 Usage
Validators (is)
A collection of type guards for secure and readable checks.
const data: unknown = fetchData();
if (is.String(data)) { console.log(data.toUpperCase()); } // TypeScript knows 'data' is a string here
if (is.Empty(data)) { console.log('The value is empty (array, object, or string)'); }
if (is.Nil(data)) { console.log('The value is null or undefined');}
Type Utilities
We provide not just runtime code, but also helper types to streamline your development.
import type { Awaitable, DeepPartial, AsyncFunction } from '@re-code/web_utils';
// Awaitable: Accepts both T and Promise
async function process(value: Awaitable) { const result = await value; console. log(result); }
// DeepPartial: Makes all nested properties optional const config:
DeepPartial = { db: { host: 'localhost' } }; // You are not forced to define all db properties
📂 Project Structure
The library is organized into logical modules:
/arrays: Utilities for array manipulation./formatters: Functions for data formatting./strings: String manipulation helpers./types: Advanced TypeScript type definitions./validators: Type checking and validation functions (theisobject).
🤝 Contribution
Contributions are welcome! If you have a utility function you use in all your projects, feel free to open a Pull Request.
- Fork the repository.
- Create a branch (
git checkout -b feature/new-utility). - Make your changes and commit (
git commit -m 'Add: new date utility'). - Push to the branch (
git push origin feature/new-utility). - Open a Pull Request.
📄 License
MIT © Codex96
