Skip to content

Runtime and compatibility

Phase one is ESM-only and requires Web Crypto hashing.

  • Use Node 24.14.1 or newer.
  • globalThis.crypto.subtle.digest must be available.
  • The package does not expose CommonJS entry points.
  • globalThis.crypto.subtle.digest must be available.
  • TextEncoder must be available for UTF-8 conversion.
  • CI verifies digest parity in Chromium, Firefox, and WebKit on desktop, plus Chromium and WebKit mobile emulation through Vitest browser mode and Playwright.

See Browser and worker usage for the supported in-browser calling patterns.

  • The shipped helper uses SHA-256 only.
  • Inputs are either UTF-8 strings or raw Uint8Array values.
  • The output is always a lowercase hexadecimal string.
  • If the runtime is missing the required Web Crypto surface, UnsupportedRuntimeError is thrown.