Skip to content

Latest commit

 

History

History
93 lines (71 loc) · 3.8 KB

README.md

File metadata and controls

93 lines (71 loc) · 3.8 KB

Identus TypeScript SDK

Coverage Status


Identus is a self-sovereign identity (SSI) platform and service suite for verifiable data and digital identity. Built on Cardano, as a distributed ledger, it offers core infrastructure for issuing DIDs (Decentralized identifiers) and verifiable credentials, alongside tools and frameworks to help expand your ecosystem. The complete platform is separated into multiple repositories:

  • Cloud Agent - Repo that contains the Cloud Agent that provides self-sovereign identity services to build products and solutions.
  • Mediator - Repo for the DIDComm V2 Mediator.
  • Edge Agent SDK TS - Repo for the Typescript version of the SDK.

We also have edge agents for other platforms:

SDK Overview

  • Apollo: Provides a suite of necessary cryptographic operations.
  • Castor: Provides a suite of operations to create, manage and resolve decentralized identifiers.
  • Pollux: Provides a suite of operations for handling verifiable credentials.
  • Mercury: Provides a suite of operations for handling DIDComm V2 messages.
  • Pluto: Provides an interface for storage operations in a portable, storage-agnostic manner.
  • Agent: A component using all other building blocks, provides basic edge agent capabilities, including implementing DIDComm V2 protocols.

Getting started

We highly recommend you check out the docs 🗺️

Install

npm i @hyperledger/identus-edge-agent-sdk

or

yarn add @hyperledger/identus-edge-agent-sdk

Demo application

This repository also includes a browser and a Node.js demo application

Build demo dependencies

The demos assume building this repo from source, so you will need the following:

  • Bash
  • Rust (cargo) and wasm-pack installed.
  • Node JS Version (20/LTS Recommended)

Clone and build:

git clone [email protected]:hyperledger/identus-edge-agent-sdk-ts.git --recurse-submodules
cd identus-agent-sdk-ts
npm i
npm run build

Run the demos

Once you have built the demo dependencies, you can try out each of the demos:

Nodejs Module:

cd demos/node-esm
npm i
npm run start

Nodejs CommonJS:

cd demos/node-cjs
npm i
npm run start

Browser React / NextJS

cd demos/next
npm i
npm run build # becuase Error: ENOENT: no such file or directory, open '/.../identus-edge-agent-sdk-ts/demos/next/.next/BUILD_ID']
npm run start

Implementing storage for the SDK

This SDK exposes Pluto, which manages data schemas, migrations for you, but requires a Pluto.Store which needs to be implemented by the user, as this is particular to your use case.

Provided demo implementations are intentionally oversimplified and should not be used in production.

Example community implementations: