Inspiration

As beginner hackers, we were confused and a bit lost on where to start, especially with ideas. With time counting down and stress getting to us, we decided our track-based ideas wouldn’t meet our criteria for creativity. Instead, we decided to go off script to find something we all had in common. As college students, we often find ourselves bored or stressed out and needing a way to relax. Zot Quests is our solution to that problem, giving students a fun way to decompress, socialize with one another, and avoid doomscrolling.

What it does

Zot Quests provides AI-generated side quests for bored or stressed UCI students, such as finding someone wearing UCI merch or taking a picture of an anteater. Each quest has an associated difficulty level, time limit, and coin reward upon completion. Higher difficulty levels award more coins, which can be used to buy cosmetic items for your very own Petr avatar to show off to your friends.

How we built it

Beginning the project, responsibilities were divided among the group to ensure the timely completion of the app. Aidan was in charge of the frontend, prototyping on Figma before fully fleshing out our idea in JavaScript using React, including fluid transitions and user-friendly interfaces. Alan and Timothy focused on the backend AI logic, shaping Google’s Gemini 2.5 Flash with FastAPI to provide the generation of quests and verification of their fulfillment through identifying images of completion. Corey also focused on the backend, being more concentrated on the database and login authentication using Supabase. Through this, we were able to connect the databases to ensure leaderboards and profile views of other players’ Petrs were working properly.

Challenges we ran into

Aidan, having little experience with JavaScript and React, struggled with the frontend development at first, needing to learn the syntax. However, once he was able to overcome the hurdles of learning the syntax, he was able to build a functional, user-friendly interface. Thanks to his Figma designs, building the frontend was structured and straightforward. Alan and Timothy had trouble with FastAPI, considering it was their first time working with APIs. Throughout the process, they struggled with FastAPI’s routing and imports. To make matters worse, they were constantly running out of credits for API keys, which was a whole new obstacle. However, they were able to overcome these setbacks and build an effective gateway to facilitate their Gemini integration. It was Corey’s first time working with Supabase, so he was jumping into the deep end of the pool. Despite this, his determination to learn allowed him to develop a complex database that excelled in its purpose. Considering everyone was a beginner hacker, Corey, having only attended one hackathon previously, meant that developing as a team was going to be a great obstacle due to inexperience in a collaborative environment. Alan and Timothy barely used Git/GitHub, so learning that also sapped project time. However, thanks to Aidan and Corey’s experience with working with GitHub, we as a team managed to overcome the hurdle. The merge conflicts we encountered were a nightmare to deal with, but by the end of the hackathon, they were no longer a common occurrence.

Accomplishments that we're proud of

We are proud that we were able to learn how to develop as a team quickly and come together to build an interactive, functional app with real-world application. Because of our innovation abilities, we were able to come up with an idea that we were all satisfied with and proud of. Despite the obstacles of having to learn new tools, frameworks, designs, API concepts, and languages, we completed Zot Quests and obtained skills along the way. We are proud to construct a tool that will build a community and our motivation to foster more interaction between UCI students.

What we learned

Through the project, we learned how to develop as a team, integrate third-party APIs, prompt AI to not just see messages, but also verify images, and use complex tools such as Supabase for login and databases, and Git/Github for version control (Now we know what git merge does!) We also learned how to enjoy the grind in each other’s company.

What's next for Zot Quests

  • Mobile app: Expanding Zot Quests to mobile, allowing players quick and easy access to Zot Quests.
  • Location-specific quests: With mobile app support, the app will use players’ live location to trigger more specific, location-based quests.
  • Live Multiplayer: Players will be able to duel their friends at the same time; the one who finishes their quest first wins!

Built With

Share this project:

Updates