Developer-focused npm packages for security, compression, and server utilities.
TypeScript-first. Minimal dependencies. Production-ready.
Cross-platform cryptography for Node.js, browsers, Deno, Bun, and Cloudflare Workers.
- Zero dependencies β fully self-contained
- AES-256-GCM encryption with HKDF key derivation
- PBKDF2 password hashing with 320K iterations and constant-time verification
- Type-safe with throwing and
Result<T>variants for every function - Tree-shakable β import from
cipher-kit/nodeorcipher-kit/web-api
npm install cipher-kitCross-platform string compression using DEFLATE. 30-90% size reduction on typical text and JSON.
- Lossless DEFLATE via
pako - Automatic passthrough β skips compression when it isn't beneficial
- Decompression bomb protection via
maxOutputSizewith streaming abort - Type-safe with throwing and
Result<T>variants
npm install compress-kitExtract the real client IP from HTTP requests behind any proxy or CDN.
- 12+ proxy headers checked in priority order (Cloudflare, Fastly, Akamai, AWS)
- Standalone function or Express/NestJS middleware
- Auto-populates
req.clientIpandreq.clientIpswith TypeScript support - Zero config β validates IPs using Node.js
net.isIP()
npm install get-client-ipSelf-signed HTTPS certificates for local development. No OpenSSL required.
- Auto-generates and validates β checks expiry, permissions, and key/cert pairing
- Smart reuse β reuses existing certs when they're still valid
- Framework-ready β Express, NestJS, Hono, Fastify
- Secure file permissions enforced (Unix:
600on private key)
npm install -D generate-certsType-safe cookie management for Express and NestJS with automatic security enforcement.
setCookie,getCookie,deleteCookieβ complete cookie API- Auto-enforces
__Secure-and__Host-prefix rules sameSite: "none"forcessecure: trueβ prevents silent browser rejection- Graceful error handling β returns
boolean, never throws
npm install modern-cookies| Tool | Purpose |
|---|---|
| TypeScript 5.9 | Strict types with verbatimModuleSyntax and nodenext resolution |
| pnpm | Workspace management and dependency resolution |
| Turborepo | Cached, dependency-aware builds across packages |
| Just | Handy way to save and run project-specific commands |
| tsup | Dual ESM/CJS output for every package |
| Biome | Linting and formatting (replaces ESLint + Prettier) |
| Vitest | Testing with TypeScript type checking |
- Open an issue or feature request
- Submit a PR to improve the packages or add new ones
- Star the repo if you find it useful