Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/verida/verida-js
The Verida SDK provides several SDKs to interact with the Verida Network
https://github.com/verida/verida-js
blockchain decentralized identity personal-data privacy web3
Last synced: 29 days ago
JSON representation
The Verida SDK provides several SDKs to interact with the Verida Network
- Host: GitHub
- URL: https://github.com/verida/verida-js
- Owner: verida
- License: isc
- Created: 2020-12-05T12:31:51.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-09-30T05:27:43.000Z (about 1 month ago)
- Last Synced: 2024-10-07T23:19:02.903Z (about 1 month ago)
- Topics: blockchain, decentralized, identity, personal-data, privacy, web3
- Language: TypeScript
- Homepage: https://developers.verida.network
- Size: 4.28 MB
- Stars: 1,311
- Watchers: 21
- Forks: 37
- Open Issues: 86
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Verida Typescript Library
This monorepo contains [Verida Client Library](https://github.com/verida/verida-js/tree/main/packages/verida-ts) and a variety of utility packages that support that library.
There is a React Native repository that maintains a slightly modified version of the `Verida Client Library` that is used to generate the [@verida/client-rn](https://github.com/verida/client-rn) package.
## Packages
These are the main packages you are likely to use:
- [client-ts](https://github.com/verida/verida-js/tree/main/packages/client-ts): Verida client library. Install this library in your project to add support for the Verida protocol.
- [account-web-vault](https://github.com/verida/verida-js/tree/main/packages/account-web-vault): Create a Verida network connection that uses a QR code and the Verida Vault to sign authentication requests. Use this for your web application.
- [account-node](https://github.com/verida/verida-js/tree/main/packages/account-node): Create an instance of a Verida account using a private key or seed phrase. Automatically signs all authentication requests. Use this for NodeJS server side applications or React Native applications.These are helper packages that typically aren't used directly:
- [account](https://github.com/verida/verida-js/tree/main/packages/account): Common code shared amongst the various `account-xxx` implementations
- [encryption-utils](https://github.com/verida/verida-js/encryption-utils): Encryption utilities to make using `tweetnacl` a bit easier
- [keyring](https://github.com/verida/verida-js/tree/main/packages/keyring): Keyring for managing asym, sym and signing keys for a given account context
- [storage-link](https://github.com/verida/verida-js/tree/main/packages/storage-link): Utilities to help linking storage endpoint information to a Verida account## Developer Notes
### Node Version
This requires **node v18 (lts/hydrogen)** to build. We use [nvm](https://github.com/nvm-sh/nvm) to manage this:
```
nvm install lts/hydrogen
nvm use # this uses the .nvmrc file
```### Linking dependencies
It's not possible to add dependencies between monorepo packages using yarn (ie: `yarn add @verida/encryption-utils`) if that package hasn't been published to `npm`.
Unpublished dependencies between monorepo packages can be linked by:
- Manually adding the expected dependency to `package.json` (ie: `@verida/encryption-utils`)
- Run `yarn install` in the root directory of this project### Building
Build all packages:
In the root directory:
```
yarn install
npx lerna run build
```To build a specific package:
* `cd package/package-name`
* `yarn`
* `yarn build`## Creating a release
Update all the CHANGELOG.md files in each package to include entries for all the changes made since the last release.
```
$ npx lerna run build
$ npx lerna publish --dist-tag next
```Use tag `next` for an upcoming release or `latest` for the latest version.