|Description||Hyperledger Cactus is a plugin based framework which aims to provide developers with an abstraction over protocol specific implementations, and enabling interoperability. |
This enables solutions to more easily adapt to new protocols, and make transactions involving multiple public and/or permissioned ledgers.
What is Hyperledger Cactus?
Cactus is a pluggable enterprise-grade framework to transact on multiple distributed ledgers without introducing yet another competing blockchain. An SDK of SDKs
Cactus aims to provide Decentralized, Adaptable and Secure Integration to and between Blockchain Networks. It's aims to cover as many protocols as possible through
an extensible plugin architecture where new protocols or functionality can be added by creating new plugins.
Why should I use Cactus?
- To address blockchain fragmentation; Allow developers to connect and perform transactions across different blockchain networks.
- Save (distributed) app developers from re-inventing the wheel; Simplify secure interactions with blockchain nodes using a standardized interface across protocols.
- Lower risk of adopting blockchain by businesses; Abstract your app layer from the blockchain protocol, allowing developers to easily change the blockchain
protocol being used and reducing risks of your app being obsolete.
What are Cactus Design principles?
- Key principles:
- Plugin architecture: Maximize flexibility and future-proofing through plug-in architecture
- Secure by Default: Avoid needing explicit action from users to have a secure Cactus deployment.
- Toll Free: Users should not be required to use tokens for transactions & Operators should not be required to take a cut of individual transactions
Low Impact Deployment: Do not interfere with or impede existing network requirements
- Additional principles:
- Wide Support: Support as many blockchain protocols as possible, and constantly support new ones.
- Prevent Double Spending: Whenever two networks are interacting with each other ensure that there is no double spend whenever possible.
- Preserving Ledger Features: Using Cactus should allow you to use all the features which the protocol enables.
- Horizontal Scalability: Cactus should never be the bottleneck of all the networks involved. IE: If 2 networks can do 100tps, Cactus should be able to handle 200
What are Cactus current features?
- Connectors for different blockchain protocols
- Hyperledger Besu, Hyperledger Fabric, (WIP for Corda, Geth, and Quorum)
- Atomic transfers across legers
- HTLCs for Ether, ERC20 (WIP Fabtoken)
- Decoupled identity
- JWT, (WIP OpenAPI)
- Prometheus and Grafana based monitoring of the individual plugins
How can I collaborate?
To see a guide on how to use Hyperledger Cactus, take a look at the links below in the Documentation section. Keep in mind that this is currently being updated so please write us through the different means listed in the Communication section.
If you want to collaborate in Cactus' development, you can pick an issue directly from Github – we've linked to some good first issues below that are good places to start for new contributors. If you need extra guidance, contact us through the chat or join one of our meetings and we can help you.
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.
For a better understanding of where Hyperledger Cactus is heading please see the Whitepaper and Design Principles below!
Hyperledger Cactus uses GitHub for source code control.
You are invited to get involved with the Cactus project. Here are some ways you can get started.
- Join one of our pair programming calls
- Instructions on building Cactus (the framework itself)
- Join communication channels and introduce yourself and ask questions (details below)
- Grab a good first issue based on your level of experience/technical area(s) of expertise or interests:
Chat (for questions and ephemeral discussions)
Recent space activity
2021-05-10 Cactus Maintainers Agenda - Planning Session created May 03, 2021