Decentralized game - HWorld
- Project made with React, Redux, Redux-saga, Drizzle (redux and saga supported) and Metamask extension for ethereum
- This initial designs of first iteration required connection to ethereum network and purely working top of ethereum chains independent from any backend support.
- I found Drizzle, part of truffle framework quite useful for ethereum contract actions
- I set up Ganache local ethereum chain to work with smart contracts
- Smart contract team already working with Truffle, so it was easy to integrate contract data to frontend
- Drizzle, redux-saga integrated smart contract library enables us to call, cache, update and data related actions
- One of the challenging parts was to create consistency between all the async events happening all over the app which independently uses contract functions
- Other challenging part was, this technology stack is quite new and all the necessary tools are not exist. Therefore I created custom end to end testing library based on Cypress and puppeteer which uses Metamask extension for transaction testing.