Filecoin EVM allows developers to port any existing EVM-based smart contracts straight onto the FVM. The Filecoin EVM runtime is completely compatible with any EVM development tools, such as Hardhat, Brownie, and Metamask, making deploying and interacting with EVM-based actors easy! This is because Filecoin nodes offer the Ethereum JSON-RPC API.
Once Milestone 2.2 of the FVM roadmap is complete, developers will have the option to deploy actors on either the FEVM or native FVM, or both if they really want to. But which should you choose? The decision can be summed up as such: if you want better performance, write actors that are compiled to WASM and deployed to native FVM. If you are familiar with Solidity and want access to the EVM ecosystem of tools, but don’t mind less performance, deploy to the FEVM. See the pros and cons of each below:
|Pros||Native execution speed and performance on Filecoin (i.e., less gas cost per unit of actor code executed).|
Write actors in any language that compiles to WASM 1.
|Take advantage of current Solidity and EVM tooling to quickly port or write actors.|
|Cons||Tooling is not yet as mature as EVM tooling.||Higher gas fees and lower performance due to the virtualization overhead of the FEVM.|
In both cases, you have access to all the awesome power of the Filecoin blockchain, including storage contracts as a native primitive!