-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
# [6.2.0](v6.1.1...v6.2.0) (2024-10-04) ### Bug Fixes * e2e cucumber import ([#291](#291)) ([e569d79](e569d79)) * next generation building tools and testing framework ([#258](#258)) ([54ead35](54ead35)) * sdk module resolution issues ([#290](#290)) ([f53d728](f53d728)) ### Features * Connectionless Offer ([#293](#293)) ([97e05e7](97e05e7)) * integrating error reporting protocol ([#289](#289)) ([02430db](02430db)) * OIDC Agent ([#278](#278)) ([295e14f](295e14f)) * separate DIDCommAgent and adding Tasks ([#277](#277)) ([3a8fd66](3a8fd66))
- Loading branch information
1 parent
7b4542f
commit 7af09d4
Showing
303 changed files
with
4,383 additions
and
2,419 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,7 +2,7 @@ | |
|
||
# Identus TypeScript SDK | ||
|
||
[![Coverage Status](https://coveralls.io/repos/github/input-output-hk/atala-prism-wallet-sdk-ts/badge.svg?branch=master)](https://coveralls.io/github/input-output-hk/atala-prism-wallet-sdk-ts?branch=master) | ||
[![Coverage Status](https://coveralls.io/repos/github/hyperledger/identus-edge-agent-sdk-ts/badge.svg?branch=master)](https://coveralls.io/github/hyperledger/identus-edge-agent-sdk-ts?branch=master) | ||
|
||
--- | ||
|
||
|
@@ -11,90 +11,83 @@ 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](https://github.com/hyperledger/identus-cloud-agent) - Repo that contains the Cloud Agent that provides self-sovereign identity services to build products and solutions. | ||
* [Mediator](https://github.com/input-output-hk/atala-prism-mediator) - Repo for the DIDComm V2 Mediator. | ||
* [Edge Agent SDK TS](https://github.com/input-output-hk/atala-prism-wallet-sdk-ts) - Repo for the Typescript version of the SDK. | ||
* [Edge Agent SDK Swift](https://github.com/input-output-hk/atala-prism-wallet-sdk-swift) - Repo for the Swift version of the SDK. | ||
* [Edge Agent SDK KMP](https://github.com/input-output-hk/atala-prism-wallet-sdk-kmm) - Repo for the Kotlin Multi-Platform version of the SDK. | ||
* | ||
* [Mediator](https://github.com/input-output-hk/identus-prism-mediator) - Repo for the DIDComm V2 Mediator. | ||
* [Edge Agent SDK TS](https://github.com/hyperledger/identus-edge-agent-sdk-ts) - Repo for the Typescript version of the SDK. | ||
|
||
We also have edge agents for other platforms: | ||
* [Edge Agent SDK Swift](https://github.com/hyperledger/identus-edge-agent-sdk-swift) - Repo for the Swift version of the SDK. | ||
* [Edge Agent SDK KMP](https://github.com/hyperledger/identus-edge-agent-sdk-kmp) - Repo for the Kotlin Multi-Platform version of the SDK. | ||
|
||
## 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](https://github.com/input-output-hk/atala-prism-docs/blob/master/documentation/docs/concepts/glossary.md#verifiable-credentials). | ||
- Pollux: Provides a suite of operations for handling [verifiable credentials](https://github.com/hyperledger/identus-docs/blob/master/documentation/docs/concepts/glossary.md#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](https://hyperledger.github.io/identus-docs/docs/getting-started) :world_map: | ||
|
||
This repository includes a browser and a Node.js demo application, and also a step-by-step documented process on [how to run it](#running-a-demo-project). | ||
|
||
### Use in your project | ||
You can install and use this library in browsers and nodejs. | ||
### Install | ||
|
||
```bash | ||
npm i @atala/prism-wallet-sdk --save | ||
npm i @hyperledger/identus-edge-agent-sdk | ||
``` | ||
|
||
or with yarn | ||
|
||
or | ||
```bash | ||
yarn add @atala/prism-wallet-sdk | ||
yarn add @hyperledger/identus-edge-agent-sdk | ||
``` | ||
|
||
### Running a demo project | ||
|
||
#### Building from source | ||
This repository contains compiles typescript code and some rust dependencies for DIDComm and AnonCreds, so in order to build the code from source you will need the following: | ||
### 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 | ||
* Have Rust ([cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html)) and [wasm-pack](https://rustwasm.github.io/wasm-pack/installer/) installed. | ||
* Rust ([cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html)) and [wasm-pack](https://rustwasm.github.io/wasm-pack/installer/) installed. | ||
* Node JS Version (20/LTS Recommended) | ||
|
||
Clone the repository | ||
``` | ||
git clone [email protected]:input-output-hk/atala-prism-wallet-sdk-ts.git --recruse-submodules | ||
``` | ||
|
||
To be able to run the demos, we have to build `prism-wallet-sdk`. | ||
From the repository root run: | ||
|
||
Clone and build: | ||
```bash | ||
git clone [email protected]:hyperledger/identus-edge-agent-sdk-ts.git --recurse-submodules | ||
cd identus-agent-sdk-ts | ||
npm i | ||
npm run build | ||
``` | ||
|
||
### Running the sample applications | ||
We have enabled sample implementations for browsers (React or Next.js) and Node.js. | ||
To run each demo, ensure the whole SDK builds from the source, then cd into the demo. | ||
#### Run the demos | ||
Once you have [built the demo dependencies](#build-demo-dependencies), you can try out each of the demos: | ||
|
||
Nodejs CommonJS | ||
Nodejs Module: | ||
```bash | ||
cd demos/node-cjs | ||
cd demos/node-esm | ||
npm i | ||
npm run start | ||
``` | ||
|
||
Nodejs Module | ||
Nodejs CommonJS: | ||
```bash | ||
cd demos/node-esm | ||
cd demos/node-cjs | ||
npm i | ||
npm run start | ||
``` | ||
|
||
Browser NextJS | ||
Browser React / NextJS | ||
```bash | ||
cd demos/next | ||
npm i | ||
npm run build # becuase Error: ENOENT: no such file or directory, open '/.../atala-prism-wallet-sdk-ts/demos/next/.next/BUILD_ID'] | ||
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, a storage interface that should be implemented by the user, in the most appropriate way for a particular use case. | ||
|
||
We don't provide a default implementation out of the box at the moment, but we do provide a couple of demo implementations that can be used to get started with demos and testing. | ||
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: | ||
- [atala-community-projects/pluto-encrypted](https://github.com/atala-community-projects/pluto-encrypted): InMemory, IndexDB, LevelDB, as well as a test-suite to help you build your own. |
Oops, something went wrong.
7af09d4
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.