Last updated 2 years ago
Current chain-lib/cardano-api only lets users use blockfrost. A plugin system should be made to let anyone modify the program as needed.
Create a plugin system for chain-lib/cardano-api, starting with a way to get off-chain data, with blockfrost being an official first plugin.
This is the total amount allocated to @chain-lib Cardano API Plugins.
What is chain-lib/cardano-api & chain-lib/cardano-components?
Chain lib is an open-source blockchain library monorepo. That means that multiple related projects will all be worked on in this repository.
Cardano-api is a wallet API that follows CIP-30 dapp connector. An easy analogy is that it is building the truffle sweet, for Cardano. It is difficult for a developer that is not intimately failure with Cardano and message signing to use CIP-30. Therefore this API also exposes several functions to staking and transactions easier.
Cardano-components are web-components (ie you can use them in any framework, react, vue, angular, etc), that utilize the Cardano blockchain. Currently, there are components for initializing cardano-api, asking the user for permission to connect to your wallet, sending transactions, and staking. You can find more proposed components in the dapp funding section. Every new component is used to update, add to, and test cardano-api.
Overview
Currently, cardano-api has a very rudimentary plugin system. This system needs an overhaul if it is going to be ready for other developers to build on top of the cardano-api project. Hooks need to be made for basic features, like getting off-chain data, and every system of the code should be extendable to allow for new features. Say for instance you want to use your own backend, with your own API. Currently, chain-lib would not allow you to do that. It is very handy for developers to use this tool though because otherwise, they need to become experts on emurgo/cardano-serialization-library, and the inner workings of the cardano-blockchain. If the plugin system. is easy. to use then we can abstract away the complexities of working with the cardano blockchain, allowing more developers to use it in their own projects.
Specifically, this project will create two plugins, and modify the plugin system to make it easy for new developers to work with. The first plugin will be for blockfrost, and getting offchain-data. The second will be for commands related to sending ada, and staking.
Definition of Success
Within 3 months, the plugin system will be completely rewritten with the two base plugins working. Within 6 months multiple plugins not written by chain-lib are created.
Budget
Complete rewrite of the plugin system = $50 USD * ~60 hrs
Blockfrost Plugin = $50 USD * ~10 hrs
Spend Plugin = $50 USD * ~13 hrs
Taxes = $1042.8 USD
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
Novella / Cardano Keys Developer, SPO, Alanzo Purple tester, Plutus Pioneer 1, and already built several components inside the github repo.