EVM on Flow

Unlock more than you ever imagined: the path to deploy any Ethereum dApp on Flow - unlocking its full mainstream potential without contract code changes

Compatibility with Trusted Tools

Trusted tools and protocols like Uniswap, Opensea, Metamask, Chainlink Oracle, Layerzero, Remix, and Hardhat will be able to function on Flow out of the box, while developers will still be able to write Cadence smart contracts to extend and build on the Solidity smart contracts with full composability.

There are many opportunities...

Freedom for Developers 

The EVM on Flow upgrade allows dApps that consist mostly of EVM-compatible code to tap into the powerful features of Flow and build beyond the programming limitations of Solidity. Developers can access cross-chain infrastructure and applications to create more powerful dApps.

Leverage modular blockchain architecture …

Unlock

Dramatically more advanced and sophisticated dapps, targeting a mainstream audience, without a complete rewrite
Liquidity, defi use cases, and extensive platform integrations for everyone in the existing Flow and broader crypto ecosystem
Seamless composability across chains

How it Works

EVM on Flow will allow for developers to easily compose the above features and capabilities of Cadence on top of existing tooling and smart contracts developed in Solidity for Ethereum and other EVM-compatible networks.

EVM Equivalence via the Gateway

Cadence code can interact with the EVM environment synchronously. This allows Cadence code to compose with EVM code powerfully and easily. More details here

Cross VM Bridge

Is made possible by a smart contract protocol which facilitates arbitrary token interchange between VM environments. By introducing a new EVM account type, which has a programmable proxy on the Cadence side through which interactions with EVM are mediated, comes the ablility to orchestrate and compose EVM transactions within a Cadence one. Learn more with FLIP #237 Flow VM Bridge

Leverage EVM +
capabilities on Flow EVM

Interact with multiple smart contracts in one atomic interaction

Composing EVM transactions in Cadence satisfies signature requirements …
Try Flow with an existing EVM codebase without threat of lock-in

Stand out!

Try Flow with an existing EVM codebase without threat of lock-in

Your users can continue using EVM-native wallets

Add new Cadence-specific features at any point...

Setup and Go

EVM code and clients will be able to work with the EVM environment on Flow (via gateways) with no customization beyond setting a different RPC endpoint and chain-id.

EVM on Flow

Ethereum Mainnet
EVM on Flow
MEV Resistance
Eth
Mainnet

Flow natively provides censorship & MEV resistance which is achieved by designating specific validators for building transaction bundles that are separated from the validators proposing blocks. Learn more.

Flow EVM
Programming Language Flexiblity
Solidity
Eth
Mainnet

Solidity or Cadence: a resource-oriented paradigm, providing an improved security model and enabling increasingly complex smart contract functionality for developers

Flow EVM
Mainstream UX

Protocol native Account Abstraction + Account Linking

Flow EVM
Scale
With layer 2 solutions
Eth
Mainnet

Ethereum’s proposed evolution parallels Flow’s existing design: Flow’s Execution Nodes are akin to “Rollups,” Collection Nodes resemble “Data Availability Shards,” and Consensus Nodes correlate to the “Beacon Chain.”

Flow has achieved these improvements in production for the last three years - synthetic Flow benchmarks have achieved ~1k TPS leaving a significant amount of available throughput for applications today.

Horizontally scaled tx linearization model

Flow EVM
Storage
With layer 2 solutions
Eth
Mainnet

Flow’s current ~700GB of state space is extensible to the petabyte scale and allows contracts to maintain large amounts of data alongside logic at low gas rates. This has added convenience to developers who can forego off-chain metadata integration.

Horizontally scaled data availability

Flow EVM
Crescendo

Roadmap

Complete

Cadence 1.0 Emulator Release

Dec 2023

Crescendo Previewnet launch

Feb 2024

Crescendo launch on Flow Testnet

Mid 2024

Crescendo launch on Flow Mainnet

Mid 2024

FAQ

The Crescendo upgrade

I am a developer

Learn & Review
Start working on upgrading your dapp

I am a node operator

The network upgrade to Cadence 1.0 will follow the usual process

I am not (yet) a developer/builder, but I am interested in building on Flow

I am a user of a dapp on Flow

In almost all cases, you won’t need to do anything!

Won’t the additional execution load disrupt the network?

Actually no

Are you sure this is full EVM equivalence and not just compatibility?

Equivalence!

Still have a questions?

Your dApp on Flow

Are you a developer or a team that wants to build on or integrate with Flow?