Inspiration

Our Inspiration began with wanting to build an app that allowed multiple users to compete in their music knowledge. We wanted to make it Kahoot and JackBox Games styled, so we could play in real-time with our friends!

What it does

Our product has a website that hosts the game. This website has limited access to a sqlite3 database, so we can allow the game function to store the data elsewhere. The product also has a mobile app that interacts with the database, where players can update their submissions for answers for each song. The website plays the song, and the users enter their guesses for the song name on the app.

How we built it

We built the game in three parts - the website, built with React Native, the iOS app, built with Swift, and the backend part, built with Python and SQLite. The backend portion has multiple functions that the other portions of the project make use of to access the database.

Challenges we ran into

We had originally planned to make the system entirely on Swift, but the Spotify API for mobile development had several flaws and couldn't run on the most up-to-date versions of Swift and Xcode. Thus, we had to implement the Spotify API in React Native on a website, and then we were able to create the Swift mobile app free of any Spotify API issues. Furthermore, we had to make several changes to our original backend design to accommodate this.

Accomplishments that we're proud of

Given that only one of us had any idea how a hackathon even worked before today, we are extremely proud that we were able to finish building our project given the number of challenges we faced. While we were working on only having an app, we realized around 4:00 PM that Spotify's IOS API was very flawed in a way that wasn't fixable by us. As a result, we had to pivot and completely start the backend and frontend part of the app from scratch. Being able to quickly, yet effectively, design a new process was a huge accomplishment for us. On top of that, being able to tie together so many different languages and techniques in our product was also a major accomplishment.

What we learned

We learned that sometimes, even with the most correct code, it is possible to run into major roadblocks and that forcing our way through a brick wall is not always the best path to success. Instead, making pivots to create more interesting and buildable projects is a much more feasible and creative way to continue. We also learned several things about the languages and APIs we used as well as the way that all of them interact with one another.

What's next for SYFGames

Being able to implement multiple simultaneous game rooms as well as having a consistent server run at a higher processing level would be ideal since these would enable the game to be played across far more devices and to be played without prior set up by the developers. We might also make updates to the UI of the app and website to make them more aesthetically pleasing.

Share this project:

Updates