Full Name: Ashley Lai Email: ashley.lai@vanderbilt.edu
In the project directory, you can run:
To start the game, first run the backend to start the server. To do so, cd to geotrivia, then cd to backend, and npm install cors, express, and axios. Then, run node index.js to start the server.
To open up the game after starting the backend, cd to geotrivia, cd to frontend, and npm install react, leaflet, react-leaflet, react-dom, react-router-dom, react-countdown, and canvas-confetti. Then, run npm start to start the game. Note that the main files where the majority of my code are written are located in the components folder under src.
At first, the whole idea of creating a game using web development and unfamiliar tools like react and node was extremely daunting. I had very minimal foundation in html/css/js and wasn't quite sure where to begin, and how to move forwards. However, after having the first workshop kick me off to a start, I decided to do things one step at a time. I discovered how useful libraries were and how to utilize it, I learned and coded backend for the first time to connect to the frontend, I learned how routers worked to navigate between screens, and I pushed myself to learn and try much, much more.
Throughout the process, I learned and accomplished more than I thought I could have, but I think what was the most memorable part was office hours. When attending both office hours, I was always stuck on an error of my backend code, and it always took the help of many change++ members to help figure out the problem (which I am extremely grateful for). While it was very time consuming to debug, the whole process helped me learn more in-depth how backend works/should work, and more importantly, HOW to debug, through lots of console logging to find the problem.
There are many parts of this game I would like to improve if I had time and help as well. One of the main things I was trying to do was to put a do while loop in the backend to prevent questions that were already sent before to be sent again. However, I kept getting a backend error ONLY specifically on the do while loop, and perhaps with more time to debug and more understanding of backend, I could fix that to improve one of the many aspects of the game. Overall, this was an amazing growing and learning experience for me!