Inspiration

The inspiration came from the classic "Group Chat Chaos." We’ve all been part of a potluck where everyone says they’ll bring "something," and you end up with five bags of chips, three packs of napkins, and no actual dinner. We wanted to build a tool that turned a disorganized social obligation into a streamlined, engineered process.

What it does

Potluck Pal! is a real-time event coordination engine. It allows a host to "Host a New Potluck" by defining specific requirements for Mains, Drinks, and Desserts. The app generates a unique event link that guests can visit to claim a specific slot. Once a slot is claimed, it updates globally in real-time, ensuring no two guests ever bring the same thing.

How we built it

We prioritized a clean separation of concerns:

The Backend (OOP Logic): We used Object-Oriented Programming to model our data. We defined an Event class to manage metadata and a ContributionSlot class to handle the state-machine logic of claiming items.

The Database: We integrated Firebase Realtime Database. This allowed us to avoid complex boilerplate and focus on reactive data updates.

The Frontend: I developed a Glassmorphism UI using modern CSS techniques (backdrop-filters and keyframe animations) to give the app a "fantastic," premium feel.

Challenges we ran into

Our biggest challenge was State Synchronization. We had to ensure that if two guests clicked "Claim" at the exact same time, the database handled it gracefully. Additionally, we faced a "Divergent Branch" issue in Git where our local and remote histories conflicted. We overcame this by implementing a structured merge strategy and cleaning up our directory architecture to maintain relative path integrity.

Accomplishments that we're proud of

Successful Firebase Integration: Achieving sub-second latency for real-time updates across multiple clients.

Aesthetic UI/UX: Implementing micro-interactions, such as the shaky navigation hover and floating input labels, that elevate the user experience.

Git Mastery: Resolving complex merge conflicts and maintaining a clean, professional repository structure.

What we learned

We deepened our understanding of Asynchronous JavaScript and how to handle real-time data streams. On the design side, I learned how to balance vibrant gradients with readability in a Glassmorphism theme. Most importantly, we learned the value of a solid Git Strategy—pushing features to a dev branch before merging into main to avoid breaking the "MVP" (Minimum Viable Product).

What's next for potluckio

We plan to implement Firebase Cloud Messaging to send automated reminders to guests 24 hours before the event. We also want to add a "Recipe Suggester" API that recommends dishes based on the slots that are still unclaimed.

Share this project:

Updates