A mobile-first chess app powered by decentralized technologies - You can stake to play, win games and earn tokens and NFTs and upload your best matches to IPFS for friends to watch
The problem Chess 3.0 solves Chess, a game older than time immemorial, is a favorite pastime for many people around the world. Some famous apps like Lichess, chess.org have ridden this phenomenon and have become a loved product for all. With Netflix shows promoting chess as well, it has gained a lot of momentum in recent times. However, most of these chess apps and games online are centralized, have little to no real money gaming features, and are generally prone to the risk of hacks and single point of failure. In comes, Chess 3.0, a decentralized chess app (yes, an android/ios app) where one can stake tokens, earn tokens and NFTs through competitions, see other's streams and other games as well. Basically the perks of lichess or chess.org with the goodness of web3. Challenges I ran into Multiple ones :( - Web3 integration with react native is generally a huge pain - Issues with WalletConnect for login - The general issue with Moralis Web3Api to invoke signing notifications in Metamask However, some of these cases helped me rethink what exactly needs to be decentralized, and thanks to Moralis for making life immensely smooth in specific scenarios.
How it's made
Tech used - Solidity, IPFS, React Native, Moralis Web3 APIs. For breakdown, the game logic has been written in Solidity as a smart contract and deployed to polygon Mumbai testnet. Building mobile apps that too decentralized ones are definitely painful to setup, so Moralis boilerplate came in as a big help, which not only provided a starting point, but also came with moralis providers, Dbs, and utilities which fastened the process (aka depending fully on moralis to automate the chess move without me needing to setup a socket server for transmitting the chess moves to other players). IPFS has been used to upload the game streams that players can watch, share, and even paywall (yet to build).