Skip to content

Instantly share code, notes, and snippets.

@naps62
Last active October 25, 2024 11:14
Show Gist options
  • Save naps62/29730b28b8c6e84de1da811f9a6c7d44 to your computer and use it in GitHub Desktop.
Save naps62/29730b28b8c6e84de1da811f9a6c7d44 to your computer and use it in GitHub Desktop.
ethui v2

ethui v2 (formerly Iron wallet)

overall goal: unified setup for building, testing and deploying web3 apps, both smart contracts & web app

ethui app (wallet)

  • lots of improvements to be made, but the main core is good enough to build on top of (famous last words, I know)
  • I truly believe we offer some ideas that are not present in any other developer tool
  • some ideas can absolutely be adapted for end-users (i.e. to provide power-user features, robustness, and a good trade-off between UX and security)

web3 uikit

  • I've been using both shadcn and v0 with great success
  • a lot of web3 UI primitives could be offered in a similar way to shad-cn, easing several of the frontend pains (e.g.: dealing with erc20 amounts, decoding/encoding data)
  • all this could leverage viem/wagmi/rainbowkit, just like shadcn is built on top of radix-ui/tanstack/react-hook-form

indexer

  • already working, and with interesting primitives, but had to be semi-abandoned due to other priorities
  • could be a great primitive for feeding user wallets in a semi-trusted, open-source way

explorer

  • otterscan is a great tool, but its codebase seems a bit outdated (e.g. they integrate with sourcify, but only support "Read contract" functionality, not "Write contract")
  • After implementing ots_* for anvil (and attempting to for reth), I can confidently say the API is not very ergonomic or scalable. It was built solely with otterscan v1 in mind, and tech debt accumulated
  • sourcify itself is also a bit of a nightmare to run locally, and to connect to anvil instances (as seen in my current hacky example)
  • a fully featured explorer built on top of a Reth execution extension, and accompanying anvil support, would be game-changer for development (and perhaps for live-chains explorers too)

anvil service

  • a hosted service for providing configurable cloud anvil instances, alongside side-apps for faucet, explorer, verifier, etc
  • a prototoype already built at https://github.com/naps62/persisted-anvil/tree/main and running on testnet.subvisual.co (built in <24 hours)
  • possibly the new alloy provider primitives here can help a lot with impl
  • developers want preview-apps for their PRs, which gets complex with smart contracts. e.g. liquity v2 implements their own setup, which we ended up replicating: https://github.com/liquity/bold/blob/main/.github/workflows/testnet-deployment.yml
  • this could enable automated frontend testing, regression testing, etc, which is heavily used in traditional web2, but hard to achieve with on-chain setups
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment