kurtosis-tech / kurtosis-testsuite-starter-pack

The Unlicense
1 stars 1 forks source link

Support Javascript as a kurtosis-libs SDK #43

Closed galenmarchetti closed 3 years ago

galenmarchetti commented 3 years ago

Ethereum smart contract development and manipulation depends on JS tools like Truffle ( https://www.trufflesuite.com/docs/truffle/getting-started/interacting-with-your-contracts ) or Hardhat , due to the amount of complexity involved in managing state when directly interacting with the underlying blockchain. Standard deployment and manipulation tools are written in these JS APIs.

Without a Javascript SDK, any ERC-20 (token-level) interactions will need to be hosted in a different repository, deployed in-testnet via a custom Docker container, and then testnet-level things (like genesis funded addresses, passwords, accounts, etc) need to somehow be communicated to that service. It introduces a lot of complexity, which would be a lot cleaner if the smart-contract level of control could be managed in the same environment as the testnet-level of control (both JS).

I suspect this to be true beyond Ethereum, as Avalanche and Solana both host JS clients as the customary methods for higher-level interactions with the network ( https://github.com/solana-labs/solana-web3.js/ ), ( https://github.com/ava-labs/avalanchejs ), perhaps following the success of the web3 initiative ( https://web3js.readthedocs.io/en/v1.3.4/ )

galenmarchetti commented 3 years ago

@GoodMorningA1i This is your jam!

mieubrisse commented 3 years ago

Done :)