This a basic metacoin, with minimal modifications to support working through GSN, without the client paying for gas. You still need a wallet, but only for signing transactions, not paying for them.
See https://github.com/opengsn/gsn for the GSN project.
The Metacoin itself pays for all transactions.
Other than supporting GSN, the project added links to tenderly and etherscan, to ease seeing the various components on the blockchain
- Run
yarn install
- Run
yarn run gsn-with-ganache
to run local ganache and bring up GSN contracts and relayer. - In another terminal, run
truffle migrate
to install MetaCoin - Run
yarn run dev
to run metacoin demo onhttp://localhost:8080
- open a browser, and you can mint, and send coins, with no eth in your (metamask) account
- you can also switch to
ropsten
/kovan
/rinkeby
to see it running there (or open it in http://metacoin.opengsn.org)
The gsn-with-ganache
script above does 2 things:
- Starts
ganache
with same chainId and networkId (to overcome limitation of Metamask) - calls
npx gsn start
, to start all GSN components locally.