[Ethereum] How to interact with a deployed smart contract in the real world

contract-designcontract-developmentcontract-invocationmyetherwalletweb3js

I'm learning Solidity. Now can write and test smart contracts using testrpc, truffle, MetaMask and MyEtherWalet. Basically, MyEtherWalet provides the function that I defined in my smart contract, so I can use them and pass arguments on to them and can interact with the smart contract deployed on testrpc.

Question : If I deploy my smart contract to the real Ethereum blockchain, then is there any user interface with which I could access the contract functions in the same way as I can do in MyEtherWalet?

Question 2: What is the role of Web3 here?

Best Answer

Question : If I deploy my smart contract to the real Ethereum blockchain, then is there any user interface with which I could access the contract functions in the same way as I can do in MyEtherWalet?

You may use your node's console interface, like this:

<path-to-geth>/geth attach <path-to-datadir>/geth.ipc console

Console provides you with javascript interface, where you can manipulate with your node's state, call api methods, lookup blocks, account etc.

Question 2: What is the role of Web3 here?

Web3 is a ethereum client library. It can be written in different languages. Most popular (I think) is javascript version of Web3. Actually, using a geth's console you are using all the functionality of web3.