In college, my friends and I loved to play cards against humanity and jackbox, but that's harder to do now that we're all in different states. I also wanted people to be able to add their own questions and answers to give the gameplay a little more freedom. I built gameboard as the start of a platform to play card games with anyone in the world with some of the best (worst) questions.
What it does
With all your friends in the lobby, you start the game. In free mode, everyone enters a question they want the other players to answer, preferably something weird and funny. In community mode, 5 questions from the community question pool are selected for you and your friends to play (I recommend this one to get your brain juices flowing and to get inspiration). Then the real fun begins! A question in shown and everyone is given the chance to submit an answer. Afterwards, all the answers for that question are displayed to the players for them to pick their favorite, except their own. At the end of the round, you can see how many votes each question received as well as the current score leader board. At the end of the game, the person with the highest score is the gameboard champion! This game is design to bring people for an inappropriately fun time!
How I built it
I used react for the frontend and python, flask, and flask-socketio for the backend. I deployed my python backend to GCP and the React frontend to Github Pages.
Challenges I ran into
I had never worked with websockets before I had to learn flask-socketio as I wrote the project.
Accomplishments that I'm proud of
I love that I have a working version of the application. It was something I always wanted to build. It is a great start for me to continue to build it into a platform where people can share and play their awful questions with each other. I also ran into a fair share of issues using flask-socketio but I was able to find all my answers in the docs or issues on github. I've never read docs so thoroughly before.
What I learned
I learned a lot about websockets, I barely had any knowledge of websockets before diving into this project. I also learned about MongoDB Atlas. It was super helpful! I was able to test with a real cloud db and quickly deploy it to GCP with minimal reconfiguration.
What's next for Gameboard
Keep building! I want to continue to develop the platform so a community can grow around it. I want people to be able to sign in so they can save their favorite questions to a deck that they can play from. Also, with profiles implemented, I want to build a dashboard where you can view the communities favorite questions so you can save those decks or individual questions from them. With so many memes in the world, gameboard will have endless funny questions and bring hours of fun to anyone who plays. I would also love to dig more into mobile dev for a better UX.