# @digitalcredentials/ssi

> Typescript types for the W3C Verifiable Credentials Data Model.

Latest version **5.5.0** (published 2026-05-31) · MIT license · 0 weekly downloads

## Install

```sh
npm install @digitalcredentials/ssi
pnpm add @digitalcredentials/ssi
yarn add @digitalcredentials/ssi
bun add @digitalcredentials/ssi
```

## Health

**Score 60/100 (C)** — status: active.

Positive: has types; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 5.5.0 |
| Published | 2026-05-31 |
| First published | 2025-04-29 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM |
| Node | >=20.0 |
| Dependencies | 0 |
| Unpacked size | 32.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Digital Credentials Consortium |
| Maintainers | codenamedmitri, kimhd, uligall, alexander.muehle, stuartf, jchartrand, kiliankae, klemoie, kezike |
| Keywords | dcc |

## Links

- npm: https://www.npmjs.com/package/@digitalcredentials/ssi
- Repository: https://github.com/digitalcredentials/vc-data-model
- Issues: https://github.com/digitalcredentials/vc-data-model/issues
- npm.io page: https://npm.io/package/@digitalcredentials/ssi

## Recent versions

- 5.5.0 (latest) — 2026-05-31
- 5.4.2 — 2025-11-06
- 5.4.1 — 2025-11-06
- 5.4.0 — 2025-11-05
- 5.3.0 — 2025-10-16
- 5.2.0 — 2025-10-15
- 5.1.0 — 2025-10-10
- 5.0.0 — 2025-09-08
- 4.0.0 — 2025-08-22
- 3.0.5 — 2025-04-30
- 3.0.4 — 2025-04-30
- 3.0.3 — 2025-04-30
- 3.0.2 — 2025-04-30
- 3.0.1 — 2025-04-29
- 3.0.0 — 2025-04-29

## README

# SSI Types and Data Model _(@digitalcredentials/ssi)_

[![Node.js CI](https://github.com/digitalcredentials/ssi/workflows/Node.js%20CI/badge.svg)](https://github.com/digitalcredentials/ssi/actions?query=workflow%3A%22Node.js+CI%22)
[![NPM Version](https://img.shields.io/npm/v/@digitalcredentials/ssi.svg)](https://npm.im/@digitalcredentials/ssi)

> Typescript types for the W3C Verifiable Credentials Data Model, DID Core, cryptosuites, etc.

## Table of Contents

- [Background](#background)
- [Install](#install)
- [Usage](#usage)
- [Contribute](#contribute)
- [License](#license)

## Background

If you're implementing the Verifiable Credential specification in Typescript,
chances are that you're using a type definition for VerifiableCredentials
and VerifiablePresentations. Many VC-related projects (Sphereon's Veramo, 
LEF's LearnCard, Transmute's Verifiable Data) include the type definitions in
their monorepos.

We saw a niche for a standalone library that exported just the type definitions,
hence this repository.

See [W3C Verifiable Credentials Data Model](https://www.w3.org/TR/vc-data-model/)
specification.

Inspired by / incorporates elements of other VC Typescript libraries:

* https://github.com/Sphereon-Opensource/veramo (`/packages/core/src/types/vc-data-model.ts`)
* https://github.com/transmute-industries/verifiable-data (`/packages/vc.js/src/types/`)
* https://github.com/learningeconomy/LearnCard (`/packages/learn-card-core/src/types/`)
* Existing type definitions in DCC libraries (in `learner-credential-wallet` and others)

### Versioning

The version numbers of this npm module are meant to mirror the version numbers
of the Verifiable Credentials Data Model specification. Developers are encouraged
to specify which VC Data model version they're using. For example, currently,
the VC DM 1.1 is the stable version:

```
"dependencies": {
   "@digitalcredentials/vc-data-model": "^1.1.0"
}
```

However, the VC DM 2.0 Working group is currently developing the second version
of the specification (which will likely make breaking changes). So, in the future:

```
"dependencies": {
   "@digitalcredentials/ssi": "^3.0.0"
}
```

## Install

- Node.js 16+ is recommended.

### NPM

To install via NPM:

```
npm install @digitalcredentials/ssi
```

### Development

To install locally (for development):

```
git clone https://github.com/digitalcredentials/ssi.git
cd ssi
npm install
```

## Usage

```ts
import { IVerifiableCredential, IVerifiablePresentation } from '@digitalcredentials/ssi'

// for example, in an Express route definition:
const vp = req.body.presentation as IVerifiablePresentation
```

### Exported Types/Interfaces

* `IVerifiableCredential` and `IVerifiablePresentation`
* `IOpenBadgeCredentialV3` (for OBv3 VCs)
* `IDidCoreDocument` and its children, `IDidDocument_v1_0` and `IDidDocument_v1_1`
* `IKeyPair` and its children, such as `IVerificationKeyPair2020` and `IKeyAgreementKeyPair2020`
* `ISigner`
* ... others (see individual exports in `/src`)
* `IZcap` and related interfaces (`IRootZcap`, `IDelegatedZcap`, `IZcapLike`, and `ICapabilityDelegationProof`)

## Contribute

PRs accepted.

If editing the Readme, please conform to the
[standard-readme](https://github.com/RichardLitt/standard-readme) specification.

## License

[MIT License](LICENSE.md) © 2022-2025 Digital Credentials Consortium.

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