Environment agnostic SDK for enabling native and ERC20 batch txns over EVM chains
BlockBatch is a SDK which allows the dapp developer to send ETH and any ERC20 tokens to multiple recipients in a Single transactions.
Users can batch all of the transactions they want to send and the SDK will take over the rest.
The SDK is designed in a way that it will operate in both a Browser and Node environment provided the correct parameters are provided.
The successful transactions can be viewed on Blockscout explorer using the transaction hash that is returned in the successful response. Along with the transaction receipt, an array of invalid transactions is also returned if the SDK found any.
The logic of invalid transactions response is that the SDK filters out the transactions calldata that will not work out if there is a mistake in the inputs provided. This way it prevents the whole batch from failing and executes whatever can be executed.
The smart contracts are made using Solidity and deployed, verified and viewed on Blockscout. All transactions can be viewed with the hash as well.
This SDK predicts the gas required to execute the transaction successfully to even operate on a low gas wallet and providing the ability to bump up the gas to spend by the user itself.
This project uses ethers.js and NodeJS to facilitate the generation of the transaction data and aggregate and filter the invalid transactions before sending the batch for execution. Solidity and Hardhat is used for developing the smart contracts. Blockscout apis were used for deployment of the contracts over Optimism sepolia and verifications of the contracts