not approved
@chainlib 0.0.x->1.x & nami tests
Current Project Status
unfunded
Total
amount
Received
$0
Total
amount
Requested
$14,329
Total
Percentage
Received
0.00%
Solution

Intégrer complètement le pipeline CICD. Écrire des tests jest et les intégrer dans le pipeline. Créer un connecteur dapp fictif (nami) pour les tests unitaires.

Problem

Les projets chain-lib actuels sont 0.0.x. Effectuer les mises à jour nécessaires aux projets, qui rendent la programmation avec cardano facile, prête pour la production.

Addresses Challenge
Feasibility
Auditability

Équipe

1 member

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

Current cardano-api and cardano-components are still in a testing state. Things can change, which makes it difficult for companies to utilize. Also, there is not a good ci/cd pipeline that allows for other developers to contribute to the project. In order for it to be production-ready, two main features need to be added.

CI/CD Pipeline

Currently, chain-lib uses Bazel (an open-source framework for monorepos built by google which speeds up builds 3x / 10x). This works well, but it is all local. In order to make this ready for any developer to add to the project (Like MUI) this needs a good CI/CD pipeline to run the Bazel builds and tests. We need to integrate Github actions with Bazel to automatically run tests and deploy new versions of the code. Otherwise, any developer could push code to master that contains bugs, issues, or malicious code.

Testing framework & CIP-30 (nami) testing framework

It is almost impossible to write adequate unit tests currently because there is not a good way to test CIP-30 complement frameworks (nami). This will be for the development of a mock cip-30 compliant framework, and then the integration of unit tests, to test every function and make sure it is working. Without this feature, anyone could update code, and not know if they made something that works, or is broken.

Definition of Sucess

Within the first 3 months, a nami-testing framework will be developed and open-sourced. Within 6 months cardano-api and chain-lib will be updated to 1.0.0.

Budget Breakdown

CI/CD pipeline = $50 USD * ~100 hrs

CIP-30 (nami) test framework = $50 USD * ~80 hrs

Unit Tests = $50 USD * ~50 hrs

Taxes = $2865.8 USD

Avis des conseillers communautaires (1)

Comments

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3 min 24 s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4 min 3 s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3 min 48 s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2 min 16 s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3 min 14 s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3 min 19 s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4 min 59 s
    Darlington Kofa
0:00
/
~0:00