/cactus

Hyperledger Cactus is a new approach to the blockchain interoperability problem

Primary LanguageTypeScriptApache License 2.0Apache-2.0

Cactus Logo Color

Hyperledger Cactus

Open in Visual Studio Code license CII Best Practices codecov GitHub issues

This project is an Incubation Hyperledger project. For more information on the history of this project see the Cactus wiki page. Information on what Active entails can be found in the Hyperledger Project Lifecycle document.

Hyperledger Cactus aims to provide Decentralized, Secure and Adaptable Integration between Blockchain Networks. Hyperledger Cactus is currently undergoing a major refactoring effort to enable the desired to-be architecture which will enable plug-in based collaborative development to increase the breadth of use cases & Ledgers supported.

Scope of Project

As blockchain technology proliferates, blockchain integration will become an increasingly important topic in the broader blockchain ecosystem. For instance, people might want to trade between multiple different blockchains that are run on different platforms. Hyperledger Cactus is a web application system designed to allow users to securely integrate different blockchains. It includes a set of libraries, data models, and SDK to accelerate development of an integrated services application. Our goal is to deliver a system that allows users of our code to securely conduct transactions between all of the most commonly used blockchains.

Run the Examples

Supply Chain Example

  1. Ensure a working installation of Docker is present on your machine.
  2. Run the following command to pull up the container that will run the example application and the test ledgers as well:
    docker run \
      --rm \
      --privileged \
      -p 3000:3000 \
      -p 3100:3100 \
      -p 3200:3200 \
      -p 4000:4000 \
      -p 4100:4100 \
      -p 4200:4200 \
      ghcr.io/hyperledger/cactus-example-supply-chain-app:2021-09-08--docs-1312
  3. Wait for the output to show the message INFO (api-server): Cactus Cockpit reachable http://0.0.0.0:3100
  4. Visit http://localhost:3100 in a web browser with Javascript enabled
  5. Use the graphical user interface to create data on both ledgers and observe that a consistent view of the data from different ledgers is provided.

Once the last command has finished executing, open link printed on the console with a web browser of your choice

Car Trade Example

  • The guidance is here.

Electricity Trade Example

  • The guidance is here.

Documentation

  • Project Wiki: Schedule and logs of the maintainer meetings

  • Whitepaper: The official document on Cactus design specifications

  • Contributing: How to get from an idea to an approved pull request

  • Build: Instructions on how to set up the project for development

    Build Script Decision Tree

  • FAQ: A collection of frequently asked questions

Roadmap

Can be found here: ROADMAP.md

Contact

Build/Development Flow

To go from zero to hero with project setup and working on your contributions: BUILD.md

Contributing

We welcome contributions to Hyperledger Cactus in many forms, and there’s always plenty to do!

Please review contributing guidelines to get started.

License

This distribution is published under the Apache License Version 2.0 found in the LICENSE file.