/p8e-scope-sdk

Utilities for wrapping and executing contracts for the Provenance scope interface

Primary LanguageKotlinApache License 2.0Apache-2.0

P8e Scope Sdk

Status

stability-alpha Maven Central Latest Release Code Coverage License LOC

The libraries included here comprise a development kit that makes interacting with the Provenance Blockchain Metadata module easier.

The components needed to make use of this include the following:

  • Provenance node - Provides an API to submit transactions to and to read the event stream from.
  • Object store - Stores encrypted DIME objects. More information can be found here.

Local Setup

The quickest way to run these dependent services in a local environment is to use the docker-compose setup here.

Provenance Scopes

See the docs on the Provenance Metadata module and P8e Contract Execution for background. TODO (steve docs) add more information

Contract Execution

One function that this sdk can perform is JVM based contract executions. A contract is a class that subclasses P8eContract and contains annotations. The annotations are used at runtime to map the P8eContract to a Provenance ContractSpec. A gradle plugin is provided to help develop contracts and to persist them to Provenance and Object Store.

Examples

A collection of examples are maintained here.