essential-contributions / essential-integration

Integration of Pint and the Essential protocol.
Apache License 2.0
4 stars 3 forks source link

essential-integration

Crates.io Documentation license Build Status

Integration of the Pint constraint language and the Essential protocol.

To learn more about Pint and Essential, check out the docs.

Overview

This repo hosts a set of apps that serve as both a test-bed and demonstration of how to use the Pint and Essential tooling together to build, deploy and solve contracts.

By running these app tests in CI, we ensure a compatible set of Pint and Essential tooling versions, while allowing both upstream projects to progress at their own pace.

Rust Apps and ABI-gen

Several of the Rust applications make use of the pint-abi-gen crate, which generates Rust types and functions from a provided compiled contract-abi.json. To ensure these contracts are present during development, you can run the following command to build all pint apps in the repo:

nix run .#compile-all-contracts