open-index/open-npm huggingface dataset:
npm package: @nodelith/config
Description: Lightweight configuration primitives for Nodelith: define typed config profiles, load from environment variables (optionally with a custom loader), and initialize typed records through a common interface.
Latest version: 0.8.0

# @nodelith/config

Lightweight configuration primitives for Nodelith: define typed config profiles, load from environment variables (optionally with a custom loader), and initialize typed records through a common interface.

---

## 📦 Installation

```bash
npm install @nodelith/config
```
npm package: @nodelith/controller
Description: Metadata utilities and decorators for building typed HTTP controllers in the Nodelith stack. Works alongside `@nodelith/http` for status/method enums and integrates with `@nodelith/injection` for easy dependency injection composition.
Latest version: 0.8.0

# @nodelith/controller

Metadata utilities and decorators for building typed HTTP controllers in the Nodelith stack. Works alongside `@nodelith/http` for status/method enums and integrates with `@nodelith/injection` for easy dependency injection composition.

---

## 📦 Installation

```bash
npm install @nodelith/controller
```
npm package: @nodelith/http
Description: Lightweight HTTP primitives: methods, statuses, responses, messages, and error base classes. Provides strongly typed constants you can share across controllers, clients, and error handling.
Latest version: 0.8.0

# @nodelith/http

Lightweight HTTP primitives: methods, statuses, responses, messages, and error base classes. Provides strongly typed constants you can share across controllers, clients, and error handling.

---

## 📦 Installation

```bash
npm install @nodelith/http
```
npm package: @nodelith/identity
Description: Stable, non-enumerable object identities for JavaScript/TypeScript objects
Latest version: 0.8.0

# Identity

Stable, non-enumerable object identities for JavaScript/TypeScript objects

This library generates **22-character Base62 IDs** (derived from a cryptographically-random UUID v4) and **attaches them to objects** via a **non-enumerable, non-writable, non-configurable Symbol property**. This provides a safe way to give runtime objects a persistent identity without polluting serialization or normal iteration.

---

## Features

- **Cryptographically strong IDs** via `crypto.randomUUID()`
- **Fixed-length 22-char Base62** string format: `^[0-9A-Za-z]{22}$`
- **Hidden identity field** stored under a `Symbol('__identity')`

---

## 📦 Installation

```bash
npm i <your-package-name>
# or
pnpm add <your-package-name>
# or
yarn add <your-package-name>
```

---

## Quick Start

```typescript
import { Identity } from '@nodelith/identity'

// Given an object
const object = { name: 'Alice' }

// Identities are set to objects
Identity.assign(object)

// They can be extracted safelly
console.log(Identity.extract(object))
// outputs "01dZp0m4xQwTgZsYc8N2aB"

// They do not propagate on field enumeration
console.log(Object.keys(object))
// outputs ["name"]

// Not either when converting objects as strings
console.log(JSON.stringify(object))
// {"name":"Alice"}
```

## API

### `Identity.extract(target: object): Identity | undefined`

Returns the target identity if present; otherwise returns undefined.

### `Identity.assign(target: object): Identity`

Creates a new identity and sets it on the target and returns it. Throws if target already has an identity.

### `Identity.obtain(target: object): Identity`

Returns the existing identity if present; otherwise creates and assigns one.

### `Identity.create(): Identity`  

Creates a new isolated 22-character Base 62 identity string.  

### `Identity.set(target: object, identity: Identity): Identity`

Sets the target identity given an identity string

### `Identity.bind(source: object, target: T): T`

Ensures source has an identity (creating one if needed), then sets the same identity on target.
npm package: @nodelith/utilities
Description: Small runtime helpers for working with functions, factories, constructors, and plain objects. Among other utilities, this package is focused on safely inspecting callable signatures and property descriptors using AST parsing powered by `acorn`.
Latest version: 0.8.0

# @nodelith/utilities

Small runtime helpers for working with functions, factories, constructors, and plain objects. Among other utilities, this package is focused on safely inspecting callable signatures and property descriptors using AST parsing powered by `acorn`.

## 📦 Installation

```bash
npm install @nodelith/utilities
```