Inspiration

Deciding where to eat with friends can surprisingly take a ridiculously long time. Group chats often turn into endless debates, and people struggle to agree on a restaurant that everyone likes. We wanted to turn this frustrating process into something fun, quick, and interactive. At the same time, food is also a powerful way people connect socially. We started wondering what would happen if the familiar swiping interaction from dating apps could help groups make decisions together, and even help people meet others who share similar food tastes. This idea led us to develop HUNGRR, a platform where people can easily decide where to eat as a group while also connecting with others through their shared love of food.

What it does

HUNGRR helps groups of friends decide where to eat using a collaborative swiping system. Users can create a room and invite friends using a short room code. Once everyone joins, the group swipes through restaurants together based on a selected location. When everyone in the room likes the same restaurant, the app instantly declares a match and suggests the place for the group to go. In addition to the group decision feature, HUNGRR also includes a social element where users can connect with others based on their food preferences. Instead of matching people based only on personality, the platform allows users to discover potential “food buddies” who share similar tastes, cravings, and dining styles. By combining group decision-making with social discovery, HUNGRR makes the process of choosing food both efficient and enjoyable.

How we built it

HUNGRR is built as a full-stack web application designed to support real-time collaboration between users. On the frontend, we used React with Vite to enable fast development and efficient rendering of the interface. The UI was designed to mimic a mobile app experience, making it intuitive and easy to navigate, and React Icons were used to create a clean and modern interface. For the backend and data management, we used Firebase Authentication to handle user accounts and Firebase Firestore as our real-time database. Firestore subscriptions allow all users in a room to stay synchronized so that when one user swipes or votes, the updates are reflected instantly for everyone. To provide restaurant recommendations, we integrated the Google Places API, which fetches nearby restaurants based on the selected location. Finally, the application was deployed using Vercel, allowing us to quickly host and share the project online.

Challenges we ran into

One of the biggest challenges we faced was managing real-time synchronization between multiple users in a room. Ensuring that every user’s vote updated instantly and that a restaurant match triggered correctly required careful handling of Firestore listeners and vote tracking logic. Another challenge was managing the user flow across several different features, including group decision-making, social matching, messaging, and profile management, while still keeping the interface simple and intuitive. We also encountered a few technical issues during deployment, particularly related to asset paths and environment variables when hosting the app online. Debugging these issues helped us better understand how frontend frameworks behave in production environments.

Accomplishments that we're proud of

We are proud that we were able to build a fully functional real-time collaborative decision-making platform within the limited timeframe of a hackathon. The application successfully supports real-time room creation and joining, collaborative restaurant swiping, automatic restaurant matching, user profiles with food preferences, and a social matching feature with messaging between users. We are also proud of the clean mobile-style interface, which gives the web app the feel of a native mobile experience. One of the most rewarding moments during development was seeing multiple users join the same room and collectively match a restaurant in real time, demonstrating that the core concept of the platform works exactly as intended.

What we learned

Throughout this project, we gained valuable experience working with real-time databases and building collaborative applications. We learned how to manage complex application state in React while keeping the user interface responsive and intuitive. Integrating external APIs such as Google Places also helped us better understand how to incorporate third-party data into our applications. Additionally, we learned a lot about deploying production-ready applications and handling common issues that arise when moving from local development to a live environment.

What's next for HUNGRR

Looking ahead, we see many exciting possibilities for expanding HUNGRR. One potential improvement is implementing a majority voting system rather than requiring unanimous agreement, making it easier for larger groups to reach decisions. We would also like to introduce smarter restaurant recommendations based on users’ preferences, such as cuisine type, budget, and past choices. On the social side, we plan to develop a more sophisticated matching algorithm that connects users based on shared food interests and dining habits. In the long term, we envision expanding HUNGRR into a full mobile application and integrating features such as restaurant reservations and event planning. Our goal is to make HUNGRR the go-to platform for deciding where to eat and meeting people through a shared love of food.

Built With

Share this project:

Updates