The Transpareo Time Machine renders a Digital Product Passport as an interactive public page, and adds two things most DPP front-ends leave out: an auditable version history, and a verification verdict computed in the visitor’s own browser rather than read from a server’s “verified” flag.

Point the element at a manifest listing every version of a passport. It renders the current version up front, plus a timeline the visitor can scrub back through to replay every earlier state the passport has had, with EPCIS 2.0 ObjectEvents shown against the versions they produced. Each version’s snapshot carries a W3C Data Integrity proof set, and the renderer chooses its verification path from the proof’s cryptosuite. Whole-document snapshots (eddsa-jcs-2022, Ed25519) are canonicalized with RFC 8785 JCS; selective-disclosure snapshots (ecdsa-sd-2023, P-256) commit to each field on its own, so a view that reveals only the fields a given reader is entitled to still verifies against the issuer’s public key, with the withheld fields simply absent and nothing about them leaking. Either way the signatures are checked in the visitor’s browser via WebCrypto, with a bundled pure-JS fallback on engines lacking native Ed25519. The renderer also walks the priorVersionHash chain across both cryptosuites, hashing each link in its own format, so a removed or rewritten version becomes visible instead of silent.

Issuer and platform are treated as two independent authorities, and a compromised platform alone cannot make a passport verify. On a whole-document snapshot the proof set carries several issuer entries and several platform entries, and the default rule requires one verified entry from each side; a selective-disclosure snapshot carries the issuer’s proof and the platform’s counter-signature, each checked against the key its own verificationMethod resolves to. A platform key can be pinned for high-trust surfaces, and pinned keys are checked against a revocation list at boot.

It ships zero runtime dependencies. The reactive runtime, the JCS and RDFC canonicalizers, the multibase and CBOR decoders, and the Ed25519 and P-256 verifiers are all vendored: no React, Svelte, Lit, or Vue, and the VC and Transpareo JSON-LD contexts resolve offline. Delivery is a script tag from a CDN, an npm package for bundlers, or a self-hosted bundle. Theming is CSS custom properties, and 40 UI locales ship in the bundle, lazily loaded. A standalone element is included for checking a snapshot outside a passport page.

The renderer is storage-agnostic: it reads every artefact’s address from the manifest, so publishers host wherever they like.