Inspiration

With COVID-19 forcing us into lockdowns, many people are left bored in their homes with nothing to do. Online party games have gained traction in these uncertain times as a popular way to have fun with friends. However, we’ve noticed that there doesn’t seem to exist many party games with the central theme of guessing the song. We hope Musiquiz.io addresses the lack of multiplayer music-guessing party games.

What it does

Musiquiz will work, with the user creating a lobby and selecting from the multiple ‘playlists’ they can choose from. These ‘playlists’ are essentially a pool of songs within a certain genre/theme. Once a playlist is chosen, the host can send invite links to the lobby to other users. Users will not need to sign up to play. The host then proceeds to start the game. Every round players will have a limited amount of time to listen to the song and select their choice. Choices will range from song title, what artist(s) created the song or what album the song is from etc. The songs along with their associated choices are taken from the so said ‘playlists’ described earlier. Once all rounds are complete, the player with the highest amount of correct choices wins. Users have the option to create an account. Doing so will give them access to features such as stats and most importantly the ability to create their own ‘playlists’ which will be made publicly available for others to play with

How we built it

We decided to use the MERN (MongoDB, Express, React and Node) tech stack to build Musiquiz.io . Express on top of node allows us to easily create a RESTful API that will deal with playlist creation/modification and user stats/profiles and interact with the MongoDB database so that they are persistent. We can easily integrate WebSockets into our backend which will be necessary for the real-time multiplayer component of the webapp. React allows us to create modular and responsive UI components required for an interactive webapp such as ours.

Challenges we ran into

We ran into difficulties with managing time. Thus, the final product submitted has limited-functionality.

Accomplishments that we're proud of

Before this hackathon, majority of our team members had close to zero experience with developing web applications. We're proud that we managed to learn the basics of the MERN stack in the short time span of only 1 week. Although our implementation has MANY planned features missing, we're proud that we were able to produce a working prototype and deploy it using AWS.

What we learned

  • Contributing to a codebase collaboratively using git and github
  • How to setup a basic REST api using express and mongoose
  • The basics of socket.io to implement web sockets
  • The basics of React to create UI components
  • The basics of deploying a MERN stack webapp to AWS

What's next for Musiquiz

  • Implementing all the features advertised in the pitch :3
Share this project:

Updates