Executing a series of Ethereum transactions is a huge pain, especially when some of those transactions are contract interactions. Project admins who frequently execute many transactions as part of their workflow would benefit from a GUI to organize and schedule their transactions.
- Create and save custom transaction types generated from contract interfaces (ABIs) and which correspond to contract functions
- Create a save custom scripts by chaining together multiple transactions
- Execute a script and receive visual confirmation as each transaction is confirmed
- Compose multiple scripts by allowing a script to be imported as a transaction into another script
- Integrate web3 wallets like MetaMask and generate a series of signature requests upfront
- Gracefully restart and pick up from where the transactions left off if the user closes their browser window
- (Suggestions welcome!)
UPDATE (8/4/2019): Many people seem to think this RFP is for a Scratch-like interface as depicted above. That is NOT the case! The MVP of this GUI can likely be built more easily with buttons. When a user wants to add a new transaction to a script they could select from one of three primitive types of transaction (ether transfer, contract deployment, contract function execution) or use a saved script.
One of Ethereum’s greatest strengths is the composability of deployed smart contracts. Unfortunately, when each smart contract has its own dedicated interface, some of the value of this composability for the end user is lost. We need interfaces which are flexible enough to support multiple different smart contracts so users can create simple yet powerful scripts to manage their smart contract workflows.