a front-end system of a web flash game about an astronaut trying to collecct some doughnuts floating in space while some lava rocks are also floating.
- Collision with doughnuts 🍩 will add 5 points to his life, while collision with a lava rock 🔥 will take 20 points from his life.
- The astronaut should try to collect as much doughnuts 🍩 as possible as the score depends the most on the maximum number of collected food all over the played games.
- He also should also take care of his life; as the score depends on it in case equality of the previous aspect ⚡.
- Developed using React Js
- there is a JWT to store once the user register but he can join as Anonymous user but in this case no score will be saved in the DB
- The Game loop screen is developed using React Konva and connected to the Backend using Websocket
- The frontend sends: a. JWT if present 🔑 b. Browser window dimensions c. Astronaut represented in 3 Circles Covering his body in konva
- The Backend sends: a. Astronaut Life ⚡ b. List of movables represented with type which is either rock or food and its coordinates. There is a thread in the backend moving it
- Game ends after 2 minutes or if the Astronaut dies
- Welcome Page 🤝
- Sign-in Page
- Sign-up Page
- Game Menu for Anonymous User 😎
- Game Menu for a Registered User
- JWT cached in local storage for a Registered User
- Ranking Page 📊🏆
- About page ❔ the contact label in the navbar will direct the user to Gmail to type a mail to the me
- Rules Page ❕
- Match 👨🚀
DESCLAIMER: I am not as a specialist in game development. This project is just for practising React Js, Konva, Connection with Websockets, caching, ... So, I am sorry if the user found sth not user-friendly