overall goal: unified setup for building, testing and deploying web3 apps, both smart contracts & web app
- 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)
- 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
- 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
- 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)
- 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