Skip to content

Repository files navigation

pex-ts

A lean TypeScript implementation of DIF Presentation Exchange v1 and v2, built along the lines of dcql-ts: pure functions, structured results, and no credential parsing.

Package
dif-pex/ @animo-id/dif-pex — the library. Usage docs.
parity/ Temporary harness diffing against the deprecated @animo-id/pex. Findings. Delete after migration.

It replaces @animo-id/pex, which decodes credentials itself and therefore depends on SD-JWT, mdoc, W3C credential, JSON Schema and JSONPath libraries. Here you pass already-decoded claims, which leaves one runtime dependency (zod).

PLAN.md records the design and — in §15 — every deviation made while implementing it, with the reasoning.

Development

pnpm install
pnpm test          # vitest, all packages
pnpm build         # tsdown, ESM + types
pnpm types:check   # tsc --noEmit, all packages
pnpm style         # biome
pnpm style:fix

The examples in dif-pex/README.md are executed by dif-pex/src/readme.test.ts, so the documentation cannot drift from the API. Update both together.

License

Apache-2.0

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages