Verida Solutions

Build powerful multi-chain web3 applications with private data storage and identity

Products

Verida Vault

A self-custody mobile application to easily manage decentralized identity, personal data, crypto and Web3 apps

testnet
Verida Consent

A user-centric consent based framework for identity, access management and data sharing

testnet
Verida Message

Decentralized multi-chain messaging infrastructure

testnet
Verida Connect

A QR code based multi-chain single sign-on framework to unlock off chain data and crypto

testnet

Protocols

Verida Identity

A multi-chain decentralized identity and services framework

testnet
Verida DbStore

Decentralized private off-chain data storage infrastructure

testnet

Verida Identity

A seamless user experience to easily:
  • Create multiple decentralized identities
  • Create and import blockchain wallets
  • Manage private keys
  • Link multiple blockchain accounts to a single Web3 decentralized identity
  • Manage their on-chain personal reputation

Verida DbStore

Decentralized personal data storage for Web3:
  • Create multiple decentralized identities
  • Create and import blockchain wallets
  • Manage private keys
  • Link multiple blockchain accounts to a single Web3 decentralized identity
  • Manage their on-chain personal reputation

const database = await appContext.openDatabase('notes')
const success = await database.save({
	title: 'My first note',
	content: 'This is my first ever private, encrypted note'
})
const results = await database.getMany({
	title: 'My first note'
})
console.log(results)

const database = await appContext.openDatabase('notes')
const success = await database.save({
	title: 'My first note',
	content: 'This is my first ever private, encrypted note'
})
const results = await database.getMany({
	title: 'My first note'
})
console.log(results)

Verida Connect

A decentralized single sign on library that supports QR code login.
  • Authenticating the user
  • Unlocking encrypted private storage for your application
  • Requesting third party private data from the user
  • Accessing public and private profile
  • Conducting blockchain transactions via WalletConnect (coming soon)

const appContext = Network.connect({
  client: { environment: EnvironmentType.TESTNET },
  vaultConfig,
  context: { name: 'My dApp' }
})
const did = await appContext.did()
const profile = await appContext.openProfile()
const name = await profile.get('name')

console.log(`Welcome ${name} (${did})!`)

const appContext = Network.connect({
  client: { environment: EnvironmentType.TESTNET },
  vaultConfig,
  context: { name: 'My dApp' }
})
const did = await appContext.did()
const profile = await appContext.openProfile()
const name = await profile.get('name')

console.log(`Welcome ${name} (${did})!`)

const message = 'A new file has been uploaded to your NightSafe.'
const url = 'https://nightsafe.com/file/document/d/11Gb ...'
const messaging = vault.getMessaging()
await messaging.send(
  recipientDid,
	'inbox/type/message',
	{
		message,
		url
	},
	'New file uploaded'
)

const requestData = {
  schema: 'https://common.schemas.verida.io/health/note/v1.0/schema.json',
  externalDs: {
    did,
    contextName,
		encrytionKey,
		databaseName
  },
	direction: 'both'
}
const messaging = vault.getMessaging()
await messaging.send(
	recipientDid,
	'inbox/type/datastoreSync',
	requestData,
	'Please sync your health data'
)