Please describe your proposed solution.
at the moment the options to write off-chain code do require lots of extra work or are even hard to integrate for new projects
> the included video goes through some of them and exposes some arguments in support of the previous sentence
the library should allow both high-level usage and a lower one for more control;
as an example, a high-level function could be:
createDelegationTransaction(
"2a05c534817a0b97ce0c5a2354b6e35a067c52408fa70c77e0b5e378", // pool to delegate to
blockfrostQueryier // optional BlockchainQuerier to use to get data such as protocol-parameters
);
but a lower level transaction builder should still be available for personalized transactions, making possible things like:
function makeDelegationWithMyValidator() {
txBuilder.setCertificate(
makeDelegationCertificate(
"2a05c534817a0b97ce0c5a2354b6e35a067c52408fa70c77e0b5e378", // pool to delegate to
blockfrostQueryier // BlockchainQuerier to use to get data such as protocol-parameters
)
);
txBuilder.useStakeValidator(
new StakeValidator( "cafebeef" ) // will take the validator serialized code as input
)
txBuilder.setRedeemer({
bytes: "2a05c534817a0b97ce0c5a2354b6e35a067c52408fa70c77e0b5e378"
});
return txBuilder.buildTransaction();
}
Please describe how your proposed solution will address the Challenge that you have submitted it in.
the implementation of a js/ts library will, with no doubts, help the existing developer ecosystem integrate solutions in the front-end logic alongside expanding it by allowing more developers to easily use the library functionalities
What are the main risks that could prevent you from delivering the project successfully and please explain how you will mitigate each risk?
the idea "as is" is nothing new (we just need a better way to use what we know is possible), so all major challenges are known and the solutions too;
regarding the implementation the main risk is in code correctness and security, this risk should be mitigated by extensive testing