funded

@chain-lib Cardano API Plugins

$3,911.00 Received
$5,214.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
Solution

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.

Problem:

Current chain-lib/cardano-api only lets users use blockfrost. A plugin system should be made to let anyone modify the program as needed.

Yes Votes:
₳ 28,183,832
No Votes:
₳ 11,163,907
Votes Cast:
105

This proposal was approved and funded by the Cardano Community via Project F7: Open Source Developer Ecosystem Catalyst funding round.

Detailed Plan

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

Community Reviews (1)

Comments

Monthly Reports

I worked really hard to complete the project. I spent about 20 more hours than estimated to complete the project, and I am happy with the results.

Disbursed to Date
$3,911
Status
Launched
Completion Target
3/5/2022
Comments 0

Login or Register to leave a comment!

Previous answer is NA, since this project was completed last time as well. I need to submit close out, but plan on closing out both projects at the same time.

Disbursed to Date
$3,911
Status
Complete
Completion Target
4/5/2022
Comments 0

Login or Register to leave a comment!

Already launched. I shared photos before. I will fill out the final report when I complete my other project, both at the same time.

Disbursed to Date
$3,911
Status
Launched
Completion Target
5/31/2022
Comments 0

Login or Register to leave a comment!

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    d. 3 se. 24
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    d. 4 se. 3
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    d. 3 se. 48
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    d. 2 se. 16
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    d. 3 se. 14
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    d. 3 se. 19
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    d. 4 se. 59
    Darlington Kofa
0:00
/
~0:00