# @owf/mdoc

> ISO 18013-5 Mdoc and MDL

Latest version **0.8.3** (published 2026-10-17) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install @owf/mdoc
pnpm add @owf/mdoc
yarn add @owf/mdoc
bun add @owf/mdoc
```

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; has provenance; recently updated; high maintenance score.

Warnings: low downloads; pre 1.0.

## Facts

| | |
|---|---|
| Version | 0.8.3 |
| Published | 2026-10-17 |
| First published | 2026-02-25 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 4 |
| Unpacked size | 731.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 13 |
| Author | Animo Solutions |
| Maintainers | timoglastra, openwalletfoundation, mirkom |
| Keywords | mdoc, mdl, iso-18013-5, iso-18013-7, cbor, cose |

## Links

- npm: https://www.npmjs.com/package/@owf/mdoc
- Repository: https://github.com/openwallet-foundation-labs/identity-common-ts
- Homepage: https://github.com/openwallet-foundation-labs/identity-common-ts/tree/main/packages/mdoc
- Issues: https://github.com/openwallet-foundation-labs/identity-common-ts/issues
- npm.io page: https://npm.io/package/@owf/mdoc

## Dependencies (4)

- [zod](https://npm.io/package/zod.md) ^4.6.5
- [@owf/cose](https://npm.io/package/@owf/cose.md) ^0.5.0
- [@owf/identity-common](https://npm.io/package/@owf/identity-common.md) ^0.5.0
- [@owf/token-status-list](https://npm.io/package/@owf/token-status-list.md) ^0.5.0

## Alternatives

- [@mdxeditor/editor](https://npm.io/package/@mdxeditor/editor.md) — 962.4K weekly downloads
- [mmdb-lib](https://npm.io/package/mmdb-lib.md) — 680.9K weekly downloads
- [playcanvas](https://npm.io/package/playcanvas.md) — 36.2K weekly downloads
- [@glw907/cairn-cms](https://npm.io/package/@glw907/cairn-cms.md) — 967 weekly downloads
- [markdown-to-confluence](https://npm.io/package/markdown-to-confluence.md) — 103 weekly downloads

## Recent versions

- 0.8.3 (latest) — 2026-10-17
- 0.9.0-alpha-20261019165353 (alpha) — 2026-10-19
- 0.9.0-alpha-20261019164905 — 2026-10-19
- 0.9.0-alpha-20261019114814 — 2026-10-19
- 0.9.0-alpha-20261019101907 — 2026-10-19
- 0.9.0-alpha-20261019093947 — 2026-10-19
- 0.9.0-alpha-20261019093757 — 2026-10-19
- 0.9.0-alpha-20261019081235 — 2026-10-19
- 0.9.0-alpha-20261018124429 — 2026-10-18
- 0.8.4-alpha-20261017152632 — 2026-10-17
- 0.8.3-alpha-20261017134058 — 2026-10-17
- 0.8.3-alpha-20261017132420 — 2026-10-17
- 0.8.3-alpha-20261016174215 — 2026-10-16
- 0.8.3-alpha-20261016095738 — 2026-10-16
- 0.8.3-alpha-20261015213808 — 2026-10-15
- … 127 more at https://npm.io/package/@owf/mdoc/versions

## README

# @owf/mdoc

[![npm version](https://img.shields.io/npm/v/@owf/mdoc)](https://npmjs.com/package/@owf/mdoc)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/openwallet-foundation-labs/identity-common-ts/blob/main/LICENSE)

Implementation of [ISO/IEC 18013-5](https://www.iso.org/standard/69084.html) mDOC and mDL (mobile driving licence) documents for Node.js, browsers and React Native. Issue, hold, present and verify [CBOR encoded](https://cbor.io/) documents, including the presentation flows of ISO/IEC 18013-7 and OpenID4VP.

This package was previously developed in the [mdoc-ts](https://github.com/openwallet-foundation-labs/mdoc-ts) repository. It is versioned separately from the other `@owf/*` packages.

## Installation

```bash
# Using npm
npm install @owf/mdoc

# Using pnpm
pnpm add @owf/mdoc

# Using yarn
yarn add @owf/mdoc
```

## Usage

The `Issuer`, `Holder` and `Verifier` classes cover issuing, presenting and verifying mDOCs. Cryptographic operations, X.509 certificate handling and `fetch` are provided through an `MdocContext`. See the [tests](https://github.com/openwallet-foundation-labs/identity-common-ts/tree/main/packages/mdoc/src/__tests__) for complete flows, and an example `MdocContext` in [`context.ts`](https://github.com/openwallet-foundation-labs/identity-common-ts/blob/main/packages/mdoc/src/__tests__/context.ts).

## Dependencies

- [@owf/cose](https://www.npmjs.com/package/@owf/cose)
- [@owf/identity-common](https://www.npmjs.com/package/@owf/identity-common)
- [@owf/token-status-list](https://www.npmjs.com/package/@owf/token-status-list)
- [zod](https://www.npmjs.com/package/zod)

## Platform Support

This library is **platform agnostic** and works in:

- ✅ Node.js (>=22)
- ✅ Browsers (modern browsers with ES2020 support)
- ✅ React Native

A global `TextEncoder` and `TextDecoder` must be available. See the [React Native notes](https://github.com/openwallet-foundation-labs/identity-common-ts/blob/main/packages/identity-common/README.md#react-native) if you need a polyfill.

## Contributing

See the [Contributing Guide](https://github.com/openwallet-foundation-labs/identity-common-ts/blob/main/CONTRIBUTING.md) for details on how to contribute to this project.

## License

This project is licensed under the [Apache License Version 2.0](https://github.com/openwallet-foundation-labs/identity-common-ts/blob/main/LICENSE) (Apache-2.0).

## Credits

Thanks to:

- [auth0/mdl](https://github.com/auth0-lab/mdl) for the mdl implementation on which this package is based.
- [auer-martin](https://github.com/auer-martin) for removing Node.js dependencies and providing a pluggable crypto interface.

---
_Source: https://npm.io/package/@owf/mdoc · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
