I’ve been following the EVM-on-PVM discussions over the past months and have been collaborating with friends from the Parity and DevRel teams to support this effort. I’ve now taken responsibility for making Thirdweb’s prebuilt contracts available on PolkaVM.
TL;DR
I’m acting as a consultant-developer-from-ecosystem on this proposal. The BD team from Thirdweb mentioned they have no interest or bandwidth to handle the caveats of PolkaVM and prefer to stay focused exclusively on EVM. Given the potential of leveraging their 130+ prebuilt audited contracts, I’ve decided to take on the integration myself.
Key Findings from My Research
Thirdweb’s SDK separates deployment logic and relies heavily on IPFS. The prebuilt contracts are developed using Foundry and stored as bytecode + compiler settings + ABI on IPFS, which the SDK consumes for deployment.
Deployment Workflow:
-
Fetch Deployment Metadata from a Polygon Contract
Link to source
→ returnspublishMetadataUriwith IPFS address -
Fetch Compiler Data (ABI + Compilation Settings)
Link to source -
Fetch Contract Bytecode from IPFS
Link to source -
Deploy Implementation Contract Once Per Chain
UsesTWCloneFactoryto reuse the implementation
Link to source
Next Steps
The SDK uses this structure across all deployments. There’s also some custom logic for zkSync, still IPFS-based. Initially, I thought we’d need to upload ReSolC bytecode to their IPFS to enable usage on PVM. However, since they rely on TWCloneFactory, we’ll also need to adapt proxy generation to work with PolkaVM’s on-chain constructors.
This last point led me in a direction I’m not very familiar with. @Jan-Jan could you point me to someone who could help me keep progressing on adapting proxy generation to work with PolkaVM’s on-chain constructors?
Also, I’m already in touch with friends and contacts from Chainlink and Aragon. I’d love to stay aligned with you all on the prioritization of third-party tooling we want to bring into the ecosystem so I can coordinate and activate relevant contacts from my last four years working with EVM.