A blockchain platform for certifying sustainably and responsibly sourced suppliers.
ConsenSource is a blockchain platform for verifying sustainability-certified suppliers. This application also serves as a transparent platform for displaying industry certifications and audit data between parties (certificate accrediting groups, certificate issuers, suppliers, etc.).
ConsenSource runs on Hyperledger Sawtooth, an enterprise blockchain solution.
ConsenSource consists of several components
consensource-api - A REST API that provides endpoints for accessing blockchain data, user information, and state data.
consensource-processor - A transaction processor for handling ConsenSource transaction logic.
consensource-sds - An event subscriber that listens to blockchain events in order to parse incoming data to be stored in an off-chain reporting database.
consensource-cli - A command line interface for creating ConsenSource blockchain transactions including agents, organizations, certificates, standards and accreditations.
consensource-database - A database library for handling off-chain storage.
consensource-common - A common repo for housing custom Rust libraries, protobuf definitions, and Dockerfiles.
consensource-ui - Multiple user interfaces for each entity (standards bodies, certification bodies, suppliers and retailers) to interact with the ConsenSource blockchain.
We provide Docker images for each of the components (described above) for running and deploying on your preferred container orchestration platform.
target/consensource-api - Rust v1.44 nightly image, consensource-api binary
target/consensource-processor - Rust v1.44 stable image, consensource-processor binary
target/consensource-sds - Rust v1.44 stable image, consensource-sds binary
target/consensource-cli - Rust latest stable image, consensource-cli binary
Note: we manage our own Rust base image in the target/consensource-common repo
We provide two examples for running ConsenSource locally.
For more info on specific components, glossary and FAQs, please visit the ConsenSource docs.
Please do! Check CONTRIBUTING.md for info.