A smart contract is an agreement among the nodes on the blockchain network. They run on a blockchain and stored it on a public ledger. It is a computer protocol used to digitally facilitate, verify, or enforce the negotiation of a contract. The network transactions are run in a smart contract, which is processed and executed by the blockchain automatically. So, whenever a transaction happens between the nodes, a function is invoked that calls the smart contract, and the processing starts. Hence, the transaction can be submitted to any node on the blockchain, which broadcasts it to the entire network so that all the nodes will see the transaction. With this, we have been discussed the Ethereum platform used for writing smart contracts and introduce the solidity programming language.