Skip to content

holochain-open-dev/holoom

Repository files navigation

Holoom

Tools for weaving blockchain data into holochain. Initial implementations have been in blockchain gaming.

Key Components

Holoom hApp

A Holoom hApp network provides a space in which users can:

  • Register a unique username to their holochain agent (made possible by an authority agent)
  • Bind their various blockchain wallets to their agent with use of signatures
  • Curate freeform metadata strings linked to their own agent

@holoom/client

An npm library that provides helpers for interacting with a Holoom hApp agent, whether that be via the holo network, or with a conductor directly.

@holoom/authority

Provides several micro-service-like nodeJS applications that can be attached to an authority agent enabling:

  • REST queries of the user registry
  • Fulfillment of username attestation requests
  • Fulfillment of External ID attestation requests

The Authority Agent

Any agent can offer to act as an authority, whether it be on username uniqueness or ownership of an external ID. Where or not an authority is respected is determined at point of use. E.g. If a user were an interested in executing a recipe for a specific EVM signing offer, they would only be interested in external IDs attested by authorities specified in the trust list of that recipe.

Testing

crates/holoom_dna_tests

This provides coverage for the holoom hApp's various zomes, and can be invoked locally using:

npm run test:dna

packages/tryorama

This provides coverage for using the hApp in conjunction with the @holoom/client and @holoom/authority components. The full build and tests can then be invoked via:

npm run test:tryorama

API documents

Holoom API docs