Example Verifiable Credentials. Beyond being useful for general testing, these are also in use on the Verifiable Credential Playground.
Credentials added to this package are used on the VC Playground's Issuer tool.
- Node.js 18+ is required.
To install locally (for development):
git clone https://github.com/credential-handler/vc-examples.git
cd vc-examples
npm install
To run test:
npm test
To add or update credentials in the ./credentials directory:
- Within the
./credentialsdirectory, create a new directory for the credential. Make sure to use kebab case for the directory name. - Inside the newly created credential directory, add a
credential.jsonfile. This file should contain all the necessary information for the credential, including the issuer, credential subject, and other relevant data, for example./credentials/movie-ticket/credential.json. The credential MUST be conformant to VC Data Model 1.1. - Additionally, place a logo
imagefile for the credential in the corresponding directory. The image file should be in eitherJPGorPNGformat, for example./credentials/movie-ticket/image.png.
To optionally add or update contexts in the ./contexts directory:
- If you wish to include a context for a credential, create a new directory
for the context in the
./contextsdirectory. Make sure to use kebab case for the directory name. It should contain a filev1.jsonthat should contain the JSON-LD context definition for the credential, for example./contexts/movie-ticket/v1.json. The context MUST be conformant to VC Data Model 1.1. - Please note that once a context is created, it becomes locked and cannot be
modified. If you want to update or make changes to a context, you must create a
new context file with a new version within the context directory. For instance,
if you want to update the context for the "Alumni" credential, create a new file
named
v2.jsoncontaining the updated JSON-LD context definition within./contexts/alumni. The previous version,v1.json, should be retained in the directory without any modifications. - Please make sure that the context URLs for the contexts created in the
./contextsdirectory follow the format:https://contexts.vcplayground.org/examples/foo-bar/v1.json. - In case you need to add a custom vocabulary documentation, you can include a
vocabdirectory within your./contexts/foo-barcontext directory. Inside the./contexts/foo-bar/vocabdirectory, you can define the vocabularies within anindex.htmlfile.
import {credentialsDir} from '@credential-handler/vc-examples';
import {contextsDir} from '@credential-handler/vc-examples';
See the contribute file!
PRs accepted.
If editing the Readme, please conform to the standard-readme specification.
New BSD License (3-clause) © Digital Bazaar