Fantom utilizes the Ethereum Virtual Machine (EVM) in the backend. Smart contracts are written in Solidity and they can function on Fantom as they do on Ethereum.
To deploy a smart contract, you send a Fantom transaction containing your bytecode without specifying any recipients.
After the contract is deployed, it will be available to all users of the Fantom network.
Smart contracts have a Fantom address like other accounts.
Requirements
Bytecode (compiled code) of your smart contract
FTM for gas costs
Deployment script/plugin
Access to a Fantom node, either by running your own node or API access to a node.
​Truffle: Development environment, testing framework and asset pipeline for blockchains using the EVM
​Remix: IDE that’s used to write, compile, debug & deploy Solidity code ll in your browser.
​Solidity: Solidity is an object-oriented, high-level language for implementing smart contracts.
​OpenZeppelin: OpenZeppelin Contracts helps you minimize risk by using battle-tested libraries of smart contracts for Ethereum and other blockchains.