- Node.js version 14.18.1
- Docker
- Yarn
yarn installcp .env.sample .env; modify this file if needs bedocker-compose up -dyarn dev
GraphQL playground is available at localhost:9080.
Redis UI is available at localhost:9060.
Mongo UI is available at localhost:9070.
- I slightly updated the given GraphQL schema:
UserInput.usernameis a required attribute. This seems very logically considering the smart contract implementation. - Smart contracts events fetching jobs run every minute
getAddressFromSignaturefunction does not verify whether the correct message was signed. I could not figure out how to extract the message hash from the signature- When querying blockchain for contract events, it does not skip the previously processed events. Hence, I had to use
Mongo's
upsertfunctionality as a work arounduser already exists - I could not figure out how to decode/get the actual value of
usernamefrom the contract event. At the moment, it stores the returned hash