GithubHelp home page GithubHelp logo

the-hardforq / atala-prism-wallet-sdk-ts Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hyperledger/identus-edge-agent-sdk-ts

1.0 0.0 0.0 7 MB

atala-prism-sdk-ts

License: Apache License 2.0

Shell 0.04% JavaScript 34.80% TypeScript 65.06% Gherkin 0.09%

atala-prism-wallet-sdk-ts's Introduction

Welcome to Atala PRISM TypeScript SDK

Atala PRISM TypeScript SDK provides a library and documentation for developers to build TypeScript-based SSI applications with Atala PRISM. It provides a set of utilities for building SSI Edge Agents speaking DIDComm V2 protocols.

Basic considerations

Atala PRISM

Atala PRISM is a self-sovereign identity (SSI) platform and service suite for verifiable data and digital identity. Built on Cardano, 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:

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.
  • PrismAgent: PrismAgent, a component using all other building blocks, provides basic edge agent capabilities, including implementing DIDComm V2 protocols.

Getting started

This repository includes a browser and a Node.js demo application, and also a step-by-step documented process to run it.

Running a demo project

To be able to run the demos, we have to build prism-wallet-sdk-ts.

In order to install the package you must have created a github token with access to github repository packages and create a .npmrc file with the follwing content (assumming):

//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}
@input-output-hk:registry=https://npm.pkg.github.com

From the repository root run:

npm i
npm run build

For NodeJS

After building prism-wallet-sdk-ts, cd into {path}/prism-wallet-sdk-ts/demos/node:

npm i
node index.js

:::note The installation in the demos/node directory requires the build folder from the wallet-sdk to be available. :::

For browser

After building prism-wallet-sdk-ts, cd into the demo directory "demos/browser"

cd demos/browser
npm i
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.

Provided demo implementations are intentionally oversimplified and SHOULD NOT be used in production.

Demo development mode

To run the browser demo app, just run npm run dev:browser, and the browser will automatically open and load the demo app.

To run the Node.js demo app, run npm run dev:node to build the demo app and then run it with node build/node-test/index.js.

  1. To see how the step-by-step examples can guide you, refer to each section inside the docs folder: Apollo, Castor, Pollux, Mercury, Pluto, Agent

  2. Jump straight into the SDK-REFERENCE

atala-prism-wallet-sdk-ts's People

Contributors

elribonazo avatar milosh86 avatar igdev0 avatar amagyar-iohk avatar curtis-h avatar atala-dev avatar petevielhaber avatar hamada147 avatar fabiopinheiro avatar goncalo-frade-iohk avatar

Stargazers

Quasar avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.