# Smart Contracts

IoTeX Blockchain integrates the Ethereum Virtual Machine (EVM), which is widely used by blockchain developers. Existing EVM-based dApps can be already ported over to the IoTeX Network with no changes!

# Solidity Programming Language

You can use Solidity as a programming language for IoTeX smart contracts: the blockchain is 100% compliant with Solidity syntax, up to it's latest release.

You can find many resources about smart contract programming with Solidity on the Internet: starting from the official docs and GitHub repository, to this best practice handbook and the popular CryptoZombies interactive course, plenty of choices are available!

Another great source to start with is this book form 'O Really: Mastering Ethereum: Building Smart Contracts and DApps - 1st Edition that is freely readable on GitHub.

# Smart contracts: IoTeX Vs Ethereum

Although IoTeX smart contracts are fully compatible with Ethereum ones, developing your contracts on the IoTeX blockchain will bring some additional benefits: IoTeX is designed to be a IoT-Friendly platform, where the blockchain is the orchestrating layer for devices coordination and end-to-end trusted data transfers.

For this reason, the IoTeX design provides a fast and scalable blockchain: that means your smart contracts on IoTeX will run with a 5-second confirmation time, instant finality of transactions, and negligible transaction fees! Additionally, with the unique-of-his-kind IoTeX Tokenomics in place, millions of "Powered by IoTeX" IoT devices getting registered on the blockchain, more an more services providers joining the ecosystem, the IoTeX blockchain is the perfect environment for deploying smart contracts that will be used in real world applications!

The IoTeX blockchain is the perfect environment for deploying smart contracts that will be used in real world applications!