Documentation
Credentials that verify with the network off
A QR code carries its own proof. qredential checks the signature, the expiry, the revocation status and the claims without a single request leaving the device.
Getting started
npm i qredentialNode 20 or newer, every current browser, and React Native. It uses WebCrypto and nothing Node specific, because the device doing the verifying is usually a phone. There are no runtime dependencies.
The full test suite runs on Node 20, 22 and 24 across Linux, macOS and Windows, and in Chromium, Firefox and WebKit on every commit. Ed25519 is exercised in all four.
One caveat on React Native. It has no
CompressionStream, and issuing, presenting and verifying all work without it: the envelope simply stays uncompressed, which costs size and nothing else. Offline revocation does not work, because reading a status list means inflating a bitstring. A verifier that cannot inflate the cached list refuses with status_unavailable rather than treating an unreadable list as a clean one. If you need revocation on React Native, polyfill DecompressionStream. There is a test that runs the whole flow with both globals deleted, so this description is checked rather than assumed.Verify something
import { verify } from 2