root / Modules
This monorepo contains Verida Client Library 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 package.
These are the main packages you are likely to use:
- client-ts: Verida client library. Install this library in your project to add support for the Verida protocol.
- 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: 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: Common code shared amongst the various
- encryption-utils: Encryption utilities to make using
tweetnacla bit easier
- keyring: Keyring for managing asym, sym and signing keys for a given account context
- storage-link: Utilities to help linking storage endpoint information to a Verida account
This requires node v14.17.1 to build. We use nvm to manage this:
nvm install v14.17.1
nvm use v14.17.1
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
Unpublished dependencies between monorepo packages can be linked by:
- Manually adding the expected dependency to
npx lerna bootstrapin the root directory of this project
In the root directory:
npx lerna bootstrap
npx lerna run build
To build a specific package:
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
next for an upcoming release or
latest for the latest version.