Inspiration

In a time like this, it seems like everything is against humanity. Knowing that we couldn't also have Cards "Against" Humanity, we decided to put a spin on the game and create Cards "For" Humanity!

Being a team of all young students, we realized, after doing a bit of thinking, that boredom has become prevalent in these times; especially resulting from the COVID-19. We also understood that boredom can lead to depression and mental health issues as people are now away from their friends and everyone is currently going through one thing or another. It is these factors that highlighted our need to create an online version of an already popular game so that people can be entertained and the joy of having fun can be restored to people's homes.

About the team

Prior to starting this project, we all had minimal web-development experience; Jatin Dehmiwal has experience in Python, C++, Java, Selenium and Beautiful Soap, Cynthia Lim has experience in Python, Mogbekeloluwa Adesiyun has experience in C, C++ and working knowledge in python, and Suyogya has experience in Java and C++. We all wanted to work on something that would broaden our skill-set which is why we chose to build an app using mainly React and Javascript as they were very new to all of us.

What it does

Cards "For" Humanity is an online card game that allows for up to 8 users to play the game at once.

How to Play

Players are given6 white cards. In the center of the game, a black card displays a statement with blanks. Using the white cards that they have, players submit one card in response to the statement. A judge then decides which card is most relevant and funny. The winner is given a point and is appointed as the judge for the next round.

How we built it

The front end of the game was built using the React library in JavaScript. A React application was first created using the create-react-app command, then the files that came with the installation were edited to best suit our purposes. Most of the code was edited in JSX as it was most efficient to do so. Along with an API, we also used UiPath to create a local database, which can be used for faster access time or in times when the API is down. We used node.js and socket.io for the back-end of the app.

Challenges we ran into

Since we had never worked with React or Javascript before, it took some time to learn the basics of getting a program running. After lots of YouTube videos and tutorials, we managed to successfully pull through and create Cards "For" Humanity. We initially had trouble implementing socket.io with our React code. However, after some troubleshooting and more learning, we managed to sort out the problem!

Accomplishments that we're proud of

We are generally proud of the success of this project because we all come from different backgrounds and the fact that we all came together in a limited amount of time to produce a beautiful piece of work is truly amazing. That is what we are most proud of - our success, learning and teamwork.

What we learned

As a group, we learned how to create a React web app and we learned the basics of using React. We also learned how to implement socket.io to allow for real-time connections between the server and the client while the game is running.

What's next for Cards "For" Humanity

We hope to add more statements (black cards) and responses (white cards) to expand the gameplay. We also plan on having a chat available for players during the game.

Share this project:

Updates