Registry / http-networking / express-ruid

express-ruid

JSON →
library1.1.5jsnpmunverified

Express.js middleware for generating unique request IDs with prefixes (pid, hostname) and sequence numbers. v1.1.5, stable. Uses built-in crypto. Supports HTTP header inheritance, configurable attribute names, and optional express-http-context integration. Lighter than express-request-id, no external dependencies.

npm install express-ruid
INSTALL
IMPORT
SIG · EXPRESS-RUID
E
express-ruid
http-networkingjavascriptv1.1.5
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
import ruid from 'express-ruid'
const ruid = require('express-ruid')
Package is ESM-only since v1.1.0? Actually older versions used CJS, but current typings support default import
ruid
const ruid = require('express-ruid')
import { ruid } from 'express-ruid'
CommonJS require is still supported for Node.js environments
HttpContext
import httpContext from 'express-http-context'
import { httpContext } from 'express-http-context'
Optional peer dependency; only needed when setInContext: true
Request
import type { Request } from 'express'
Express augmentation: req.ruid added; TypeScript types included

Basic usage: generates unique request ID and attaches to req.ruid.

import express, { Request, Response } from 'express'; import ruid from 'express-ruid'; const app = express(); // Add request ID middleware app.use(ruid()); app.get('/', (req: Request, res: Response) => { console.log(`Request ID: ${req.ruid}`); res.json({ ruid: req.ruid }); }); app.listen(3000); // Output: Request ID: 1234@hostname/abc123-0000000000000001
Debug
Known issues
breakingv1.1.0 removed app.locals support and introduced express-http-context dependency for context storage.
fix
Use setInContext option and add httpContext.middleware if you need context access. For app.locals, use setInLocals: true (added back in v1.2.0?) – check docs.
affects: >=1.1.0
deprecatedsetInLocals option deprecated in v1.1.0, but restored in v1.2.0? Actually not, stay on v1.0.x if you rely on app.locals.
fix
Upgrade to v1.2.0+ or use setInContext with express-http-context.
affects: >=1.1.0 <1.2.0
gotchaForgetting to add httpContext.middleware before ruid when setInContext:true leads to context loss.
fix
Place app.use(httpContext.middleware) BEFORE app.use(ruid({ setInContext: true })).
affects: >=1.1.0
gotchaRequest ID attribute name changed from 'rid' to 'ruid' in v1.x? Check default: it's 'ruid' in latest.
fix
Access req.ruid instead of req.rid.
affects: >=1.0.0
gotchaMiddleware resets sequence counter on server restart? Prefix uses random unique part, but sequence may repeat.
fix
Use header-based ID propagation across microservices to ensure uniqueness.
affects: >=1.0.0
Errors
Common errors & fixes
TypeError: ruid is not a function
Using ES import with require or wrong default export import.
fix
Use import ruid from 'express-ruid' or const ruid = require('express-ruid').default if using ESM require.
Cannot read properties of undefined (reading 'ruid')
Accessing req.ruid before the middleware runs or missing ruid() call.
fix
Ensure app.use(ruid()) is placed before route handlers.
express-http-context middleware not used
setInContext true but httpContext.middleware not added.
fix
Add app.use(httpContext.middleware) before ruid.
Property 'ruid' does not exist on type 'Request'
TypeScript lacks declaration; package ships types but not augmented correctly.
fix
Install @types/express and ensure tsconfig includes express-ruid types.
Upgrade
Version history
1.1.5latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
5 hits · last 30 days
node
4
OpenAI (training)
1
Resources
express-ruid — npm install express-ruid · libregistry