tydids-core
Version:
A JavaScript library that empowers user defined Self-Sovereign Identity & Consent Management
125 lines (88 loc) • 3.09 kB
Markdown
# tydids-core
**tydids-core is a Node.js package that provides functionalities for Decentralized Identity (DID) based validation, authentication, and data privacy consent.**
[Project Homepage](https://corrently.io/books/tydids) | [JSFiddle](https://jsfiddle.net/stromdao/87fqscw0/13/)
<html>
<script async src="//jsfiddle.net/stromdao/87fqscw0/13/embed/js,html,result/dark/"></script>
</html>
### Installation
There are two ways to install `tydids-core`:
**Using npm:**
```
npm install tydids-core
```
This will install the package and its dependencies locally for use in your Node.js project.
**Using HTML:**
You can directly include the library in your HTML project using a CDN link:
```
<script src="https://unpkg.com/tydids-core@latest/dist/tydids.js"></script>
<script>
const validation = new window.TyDIDs.Validation();
// or
const dataidentity = new window.TyDIDs.DataIdentity();
// or
const ssi = new window.TyDIDs.SSI(key);
</script>
```
This approach is useful for quick integration in web applications without the need for local installation.
### Usage
For detailed usage examples and API reference, please refer to the files in the `./public` folder. You can also try a live demo of the functionalities at:
- [https://energychain.github.io/tydids-core/public/](https://energychain.github.io/tydids-core/public/)
Here's an example of how to use the Validation class:
```javascript
const Validation = require("./Validation");
const ethers = require("ethers");
// Create a new Validation instance
const validation = new Validation();
// Attach a signer to the instance
const signer = new ethers.Wallet.createRandom();
validation.attachSigner(signer);
// Set validation data
await validation.setValidationObject({
key_1: "Example Key",
value_1: "Example Value",
});
// Sign the account data
await validation.signAccountData();
// Publish the validation
await validation.publish();
// Check if the validation is published
const publishedAt = await validation.isPublishedAt();
console.log("Published at:", publishedAt);
```
#### Shell Script
Install:
```shell
npm install -g tydids-core
```
```shell
tydids -h
```
Revoke with given SSI File:
```shell
tydids revoke <path_to_ssi_*.html>
```
Check if granted:
```shell
tydids isgranted <identity>
```
### [Contributing](./CONTRIBUTING.md)
We welcome contributions to `tydids-core`. If you have improvements or new features, please create a pull request on the project's GitHub repository.
### License
This project is licensed under the Apache-2.0 License. Please see the [LICENSE](LICENSE) file for more details.
## Test Cases
The repository includes test cases that demonstrate how to use the Validation class. To run the test cases, navigate to the project directory and run `npm test`.
## Maintainer / Impressum
<addr>
STROMDAO GmbH <br/>
Gerhard Weiser Ring 29 <br/>
69256 Mauer <br/>
Germany <br/>
<br/>
+49 6226 968 009 0 <br/>
<br/>
dev@stromdao.com <br/>
<br/>
Handelsregister: HRB 728691 (Amtsgericht Mannheim)<br/>
<br/>
https://stromdao.de/<br/>
</addr>