Questions about flow-EVM -- full EVM equivalence

I read the following introduction about flow-EVM from here (Crescendo: Open for Builders).

========================================================================

  1. EVM compatibility is not enough – achieve full EVM equivalence

When bringing EVM to a new network like Flow, simply targeting compatibility is insufficient. Existing smart contracts need to work directly on the new platform without any concerns about API compatibility, unexpected side effects, or alternate security concerns. Client-side tools, like wallets and indexers, need to function without adjustments. Bridges and client libraries want to depend on the same assumptions that hold true on Ethereum. If it’s not 100% compatible, we’re in danger of missing the point of providing EVM support. The goal is to lower the barrier and provide full equivalence for existing projects to support Flow with trivial code changes.

========================================================================

I am a half-developer (learniing blockchain dev with golang / C#) and also a flow HODLer.
I agree flow’s design conceptions very much, and want to learn it more. So I have 3 questions:

(1) Is Flow-EVM in Crescendo Previewnet really working as full EVM equivalence? Can all the contracts running on Ethereum-EVM directly run on Flow-EVM without any changes?

(2) Does Flow-EVM working status fully achieve dev-team’s anticipation?

(3) Are there any Demos to show it?

thanks in advance.

1 Like

Hey Michael,

1- Yes, anything that is deployable to Ethereum EVM can be deployed on Flow EVM. Every execution aspect (result, receipt proof (used for log proofs), … is supposed to be identical except account state proofs which rarely is used by any dapp (this is different than receipt proofs).

2- Not sure what dev-team anticipation means but from my understanding what dev team needs is a rpc enpoint and all toolings like remix to work with it. which is going to be available on day 1 out of the box

3- Preview net is live right now with EVM functionality, so anyone can deploy their EVM contract and interact with the RPC endpoints. I believe there are couple of demos out there as well but I’ll try to find and comment here in the future.

1 Like