Is Metamask a web3 provider? I am aware it is a wallet. But is it also a web3 provider?
I have read from here that:
Web3 provider is a website running geth or parity node which talks to Ethereum network.
Then I have read here that:
Web3Modal is an easy-to-use library to help developers add support for multiple providers in their apps with a simple customizable configuration.
What do you call Metamask, Dapper, Gnosis Safe, Frame and the rest? Are they web3Providers? Or what are they?
I am asking this line of code here:
const provider = await web3Modal.connect(); const web3 = new Web3(provider) // what is provider and why should I pass it to a new instantiation of web3?