# Infinsweeper Game. It's like minesweeper, but with an infinite board. The static web-app is here: [https://portfolio.syedm.dev/infinsweeper/](https://portfolio.syedm.dev/infinsweeper/) (This version is without any signing up or logging in.) ## Working - This game has some crazy optimizations. - It uses cryptography hashes of a seed provided to the game api (randomly generated) and uses that with the cell index to generate the board. - This allows for not having to save board data if it is off the screen if that area is maked as solved. - When bought back into view it will be re-generated with the same seed. - It also uses compression algorithms to store compressed form of the data in the browser storage. ## Features - Also has full account control with email and password and resets and everything necessary. - It originally aims to be an example of a full stack web-app, but now it's just a game. - The full sinatra based web-app can be hosted using this repo. - It also has a ton of animations made using pure JavaScript Canvas API. - The entire game is made using just the JS Canvas API while the backend is made using Sinatra (Ruby) and SQLite. ## A screenshot ![image1](./images/1.png)