Library · Apr 2026 — present
Encloom
Crypto toolkit for TypeScript and JavaScript
Author & maintainer
Encloom is a MIT-licensed cryptographic toolkit for TypeScript and JavaScript: hashes, HMAC, symmetric AES-CBC, PBKDF2, CSPRNG, and secp256k1 elliptic-curve signing and key agreement. Subpath imports let bundlers tree-shake unused code; the API uses Uint8Array for consistent binary I/O in Node and browsers. The repo enforces 100% unit-test line coverage in GitHub Actions, publishes coverage, and runs npm audit with zero reported vulnerabilities.
More detail
- Hashing and MACs: SHA-256/512, SHA-3 and Keccak, RIPEMD-160, and HMAC-SHA-256/512 with sync and async helpers where relevant.
- Symmetric and KDF: AES-CBC encrypt/decrypt and PBKDF2 for key derivation from passwords.
- Elliptic curve secp256k1: key generation, ECDSA sign/verify/recover (expects a digest such as SHA-256, not raw message bytes), ECDH shared secrets, and ECIES.
- Package layout uses subpath exports (`encloom/sha2`, `encloom/ecdsa`, …) so production bundles only include what you import—full tree-shaking support alongside the root aggregate export.
- Quality gate: 100% unit-test line coverage enforced on every push in GitHub Actions, with coverage published (e.g. Coveralls) so regressions fail the build.
- Supply chain: a dedicated Actions workflow runs npm audit and keeps the published dependency tree at 0 known vulnerabilities.
Stack
- TypeScript
- Node.js
Links
Public resources (open in a new tab).