1.4.2 • Published 4 years ago
@kravc/credentials v1.4.2
@kravc/credentials
CLI for Credentials service to manage issuers and verifiable credentials.
Quick Start
Install npm package as development dependency:
npm i --save-dev @kravc/credentialsRegister an Issuer
Create ./issuer.json file with issuer metadata, icon and credential
types, e.g:
{
"iconPath": "icon.png",
"metadata": {
"url": "https://apple.co/394ouT8",
"title": "Mines - Classic Bomb Puzzle",
"subtitle": "Minesweeper logic board game",
"category": "Games"
},
"credentialTypes": [
{
"name": "Score",
"version": 1,
"schemas": [
{
"name": "Player",
"fields": [
{ "name": "id", "$type": "string" },
{ "name": "hasVideoGameScore", "$type": "ref", "$ref": "VideoGameScore" }
]
},
{
"name": "VideoGameScore",
"fields": [
{ "name": "videoGame", "$type": "ref", "$ref": "VideoGame" },
{ "name": "wins", "$type": "integer" },
{ "name": "rounds", "$type": "integer" },
{ "name": "winRate", "$type": "integer" },
{ "name": "topScore", "$type": "integer" },
{ "name": "topScoreJson", "$type": "string" },
{ "name": "bestStreak", "$type": "integer" },
{ "name": "bestStreakJson", "$type": "string" },
{ "name": "enduranceMs", "$type": "integer" },
{ "name": "bestRoundMs", "$type": "integer" },
{ "name": "bestRoundJson", "$type": "string" },
{ "name": "averageRoundMs", "$type": "integer" },
{ "name": "dateStarted", "$type": "dateTime" }
]
},
{
"url": "https://schema.org/",
"name": "VideoGame",
"fields": [
{ "name": "url", "$type": "string" },
{ "name": "name", "$type": "string" },
{ "name": "version", "$type": "string" }
]
}
]
}
]
}Registers a new issuer:
npx credentials issuer.jsonIf the script runs for the first time it generates key pair (DID) for the
administrator and stores it in the local keychain. This behavior could be
overriden by using .portal.json file.
To pre-configure administrators identity, generate private key seed via:
npx credentials seedCreate .portal.json file replacing DEFAULT_SEED with the value generated
via seed command:
{
"default": "DEFAULT_SEED"
}Make sure the file is added to the .gitignore and is not committed.
Check out full set of files at example/ folder.
Author: Alexander Kravets
Revision: June 23, 2021