Project Info
This project did not submit a demo video on Devpost.
Why? In the dawn of various modern technological advancements, there exists a growing criticism that these ecosystems of innovations are breaking apart the relations we hold in the real world. We sough to utilize these very tools to build an application that brings people together to break bread. What? Munch is an online search platform that leverages a graphical representation of user preferences and natural language to create tailored dining recommendations that perfectly blend the culinary tastes of two or more individuals. Whether you're planning a romantic first date, meticulously planning a large group dinner, or simply meeting up with old friends, Munch is here to streamline your decision making process. Our platform analyzes each member of your party's previous restaurant ratings and preferences, and learns from your group's similarities and dissimilarities to curate a selection of dining options in your local area. How? To build Munch, we used: • Reflex — an open-source framework for quickly building aesthetic, interactive web applications in pure Python. • Instructor Embeddings — a Hugging face embedding model that relies on insight into the task at hand for developing rich embeddings. • GPT-4 — used the LLM to summarize restaurant review info and data to feed to embedding models. • Google Maps API — web-scraped API holding data on ratings, reviews, price levels, and locations of restaurants throughout the Bay Area. • SciPy and NumPy — used these technologies to make computations (e.g., for cosine similarities) more efficient and easier to work with • Our very own multi-party aggregation algorithm — when determining the optimal way to combine preferences for a number of users, a key aspect to the computation is the way in which the different parties are aggregated. We create our own proprietary iterative algorithm that uses cosine similarity and embeddings to find restaurants that align with the top few restaurant choices for each of the users, ensuring that as few group members as possible end up dining at a restaurant NOT similar to one of their original top choices. At the same time, our algorithm ensures that each group member will dine at a restaurant where they have not dined recently, ensuring group bonding over novel dining experiences. The algorithm scales to a large number of group members, a large embedding size, and a large restaurant pool. Despite? Through our building journey 🛠️, we encountered a few technical challenges: Creating a reliable, thorough database of user reviews was very challenging, as different APIs resulted in a variety of inconsistent metrics. Moreover, the way in which we had to select our member aggregation methods required considerable thinking (which led us to our proprietary solution) from many less-successful algorithm trials. So What? Munch isn't just about finding a place to eat—it's about forging connections and creating lasting memories over a plate of your community's perfect blend. In a digital age where technology often isolates, Munch is as a testament to the power of technology to facilitate, build, and strengthen real-world interactions. By prioritizing meaningful, human interactions over digital distractions, we counter the paradox of online connectivity leading to real-world isolation. Our platform, devoid of any social media pressures (e.g. posting to your timeline, being able to view other's recent activity, etc.), encourages users to be present. Through Munch, we strive to make every dining experience a shared adventure worth savoring. Next? We hope to expand the site beyond use amongst friends to the making of new ones. By safely integrating location data, we hope to provide suggestions for people living near each other of their common tastes and potential restaurants and cafe's they both might enjoy. We can further reinforce our algorithm by taking in user-inputted textual data for an even further fine grained understanding of their taste.
This repository has no readme, or GitHub could not be reached.
Analysis
View
Metric
- 3
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- OpenAIIn code
- PythonIn code
- Hugging FaceClaimed
2 of 3 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
21 KB
Source files
7
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
rohandavidi/munch
16 files · 49 KB · @ b1a87f3
Structure
Interface
1 file · 6%Screens, components and styles rendered to the user.
Application logic
10 files · 63%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- Python100%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
requirements.txt
pypi · 4- dotenv
- firebase-admin
- openai
- reflex
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.