Abstract
Read from or write to any function on any contract. With a simple, no-code UX for creating, customizing, and sharing smart contract data and interactions via Fidgets, nounspace is not only a website builder, but a dapp builder. Not only do we need this ourselves for contract interactions related to $SPACE (ie. approving and staking stETH or $SPACE, claiming $SPACE rewards), but it's yet another infinitely powerful Fidget that can benefit any user or project that utilizes smart contracts.
Clickable prototype
User flow
Fidget configuration
- User selects ‘Add Read’ or ‘Add Write’
- User selects network from dropdown
- User inputs contract address
- User selects function to read or write from dropdown (optional) Input/edit ABI or if applicable, Read/write as Proxy
- User inputs hardcoded inputs OR Read Tags
- When a user adds a Read function, it becomes available as a Read Tag
- When a user adds a Write function, it becomes available as a Write Tag. If a user leaves input(s) for a function blank, they become available as a Write Tag Input(s). All Write Tags recieve one Button tag. User can customize placeholder text for write inputs and button copy.
- Every write input gets a settings gear, and if a user clicks it they can add Decimals, a Token Approval, and/or Token Balance (which doubles as a max button) by contract address
Fidget usage
- User connects wallet (until then, write buttons = Connect Wallet)
- User inputs amount or clicks their balance to input max
- User clicks ‘Approve’ and is prompted to approve an allowance for the configured contract on the corresponding token contract